본문 바로가기

개발/알고리즘

프로그래머스 숫자의 표현 C++

문제

 

코드

#include <string>
#include <vector>

using namespace std;

int solution(int n) {
    int num = (n+1) / 2;
    int answer(1), sum(0), j(1);
 
    for(int i = 1; i <= num; i++)
    {
        sum += i;
        if(sum >= n)
        {
          while(sum > n) 
          { 
              sum -= j++;
          }
          if(sum == n)
          {
              answer++;
          }
        }
    }
    
    return answer;
}

 

결과

 

걸린 시간

20분