1. 문제 설명


2. 제한 조건


3. 입출력 예

let output = solution(15);
console.log(output); // 4

4. 입출력 예 설명

입출력 예#1:


5. 문제 풀이

(1) 풀이 1

function solution(n) {
    let count = 0;
    let sum = 0;
    for (let i = 1; i <= Math.floor(n / 2); ++i) {
        for (let j = i; j <= Math.ceil(n / 2); ++j) {
            sum += j;
            if (sum === n) {
                ++count;
                sum = 0;
                break;
            }
            else if (sum > n) {
                sum = 0;
                break;
            }
        }
    }
    
    return count + 1;
}

(2) 풀이 2

function solution(n) {
    let count = 0;
    let sqrtN = parseInt(Math.sqrt(n));
    for (let i = 1; i <= sqrtN; ++i) {
        let j = n / i;
        if (n % i === 0) {
            if (i % 2 === 1) ++count;
            if (j % 2 === 1 && j !== i) ++count;
        }
    }
    
    return count;
}