이 문제는 연속된 수를 더해서 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 |