N

(프로그래머스 c++)숫자의 표현 본문

프로그래머스 알고리즘/2단계

(프로그래머스 c++)숫자의 표현

naeunchan 2020. 5. 22. 09:57
728x90
반응형

연속된 숫자들의 합이 n과 같으면 answer++을 해주면 된다..!

 

우선 start = 1 을 선언해준다.

start로 연속된 숫자의 시작을 알 수 있도록 하기 위함이다.

이제 while문으로 start <= n 일 때까지 반복하도록 하자.

 

while문 안에는 tmp 변수를 이용하여 start부터 연속된 숫자의 합이 n과 같은지

반복문을 통하여 진행한다.

 

코드는 어렵지 않으니 쉽게 이해할 수 있을 것이다..!

#include <string>
#include <vector>
#include <iostream>

using namespace std;

int solution(int n) {
    int answer = 0, start = 1;
    
    while(start <= n)
    {
        int tmp = 0;
        
        for(int i = start; tmp <= n; i++)
        {
            if(tmp == n)
                answer++;
            tmp += i;
        }
        start++;
    }
    return answer;
}
728x90
반응형