function solution(n) {
let answer = 1;
for (let i = 1; i <= n; i++) {
let sum = 0;
for (let j = i; j <= n; j++) {
sum = sum + j;
if (sum === n) {
answer++;
} else if (sum > n) {
break;
}
}
}
return answer;
}
맨처음 이런식으로 작성하였는데 시간 초과가 나와서 어디 부분을 수정하면될까 생각을 해보았다.
function solution(n) {
let answer = 1;
for(let i = 1; i<=n; i++) {
let sum = i;
for(let j = i+1; j<=n; j++) {
sum+= j;
if(sum === n) {
answer ++
}
else if(sum > n) {
break;
}
}
}
return answer
}
으로 sum 부분을 0으로 계속초기화하지않고 i로 수정하더니 정답이었다.