무지개 곰
무지개곰의 성장이야기
무지개 곰
250x250
  • 분류 전체보기
    • 블록체인 공부
      • BlockChain
      • Ethereum
    • IT공부
      • Java
      • JavaScript
      • HTML + CSS
      • React
      • 프로그래머스 (TypeScript)
    • 독서
    • 영어 공부
      • 1일 1 작문
      • 영어 짧은 글
    • 홍보
hELLO · Designed By 정상우.
무지개 곰

무지개곰의 성장이야기

[프로그래머스] 숫자의 표현 (TypeScript로 풀기)
IT공부/프로그래머스 (TypeScript)

[프로그래머스] 숫자의 표현 (TypeScript로 풀기)

2023. 1. 26. 12:00
728x90

문제 설명

Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현하는 방법이 여러 개라는 사실을 알게 되었습니다. 예를 들어 15는 다음과 같이 4가지로 표현할 수 있습니다.

  • 1 + 2 + 3 + 4 + 5 = 15
  • 4 + 5 + 6 = 15
  • 7 + 8 = 15
  • 15 = 15

자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return 하는 solution를 완성해 주세요.

제한사항

  • n은 10,000 이하의 자연수 입니다.

입출력 예

n result
15 4

문제풀이

차이가 1인 등차수열의 평균은 그 수열의 가운데 값입니다. 따라서 가운데 값이 나오기 위해서는 등차수열의 길이가 홀수여야 합니다. 단 예외는 등차수열의 길이가 2인 경우는 홀수를 나타낼 수 있으므로 가능합니다. 짝수의 경우는 2로 나눈 경우 딱 떨어지므로 등차수열의 길이가 2인 경우는 안되지만 1로 나눈 경우 몫이 짝수이지만 자기 자신을 포함하므로 홀수와 짝수 모두 예외의 경우로 인하여 정답에 1을 추가하여 반환하였습니다.

function solution(n: number): number {
  let answer: number = 0;
  for (var i = 1; i < n; i++) {
    if ((n / i) % 2 == 1) {
      answer++;
    }
  }
  return answer+1;
}
728x90
저작자표시 비영리 변경금지 (새창열림)
    'IT공부/프로그래머스 (TypeScript)' 카테고리의 다른 글
    • [프로그래머스] 할인 행사 (TypeScript로 풀기)
    • [프로그래머스] 개인정보 수집 유효기간 (TypeScript로 풀기)
    • [프로그래머스] n^2 배열 자르기 (TypeScript로 풀기)
    • [프로그래머스] 삼각 달팽이 (TypeScript로 풀기)
    무지개 곰
    무지개 곰
    java solidity react javascript등 프로그래밍 공부 기록

    티스토리툴바