기타

연속된 수를 더해서 n이 되는 경우의 수

swchung09 2025. 5. 26. 09:29

이 문제는 연속된 수를 더해서 n이 되는 경우의 수를 출력하는 문제이다.

예) 15

15 = 15

15 = 7+8

15 = 4 + 5 + 6

15 = 1 + 2 + 3 + 4 + 5

따라서 n이 15이면 4가 출력되면 된다.


이 문제는 메인 반복문 안에 숫자를 반복적으로 계산하는 방법으로 풀 수 있다.

while ((l * (l - 1)) / 2 < n){//메인 반복문
    let num = n - ((l * (l - 1)) / 2);
    if (num % l == 0){
        v++;
    }
    l++;
}

최종코드

let n = 15;
let v = 0, l = 1;
while ((l * (l - 1)) / 2 < n){
    let num = n - ((l * (l - 1)) / 2);
    if (num % l == 0){
        v++;
    }
    l++;
}
console.log(v)

 

'기타' 카테고리의 다른 글

펠린드롬  (0) 2025.06.02
최대, 최소  (0) 2025.06.02
뒤집어도 같은 숫자  (0) 2025.05.26
별찍기 with 숫자  (0) 2025.05.26
별찍기  (0) 2025.05.26