본문 바로가기

프로그래머스/기타

숫자의 표현

728x90

programmers.co.kr/learn/courses/30/lessons/12924

 

코딩테스트 연습 - 숫자의 표현

Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할

programmers.co.kr

 

 

 

#include <string>
#include <vector>

using namespace std;

int solution(int n) {
    int answer = 0;
    int sum =0;
   for(int j=1; j<=n; j++){
    for(int i=j; i<=n; i++){
            sum+=i;
        if(sum==n){answer++; break;}
        else if(sum>n){break;}  // 효율성 테스트 통과 여부 결정
    }
       sum =0;
   }
    return answer;
}

 

어떤 알고리즘? 

- for문을 돌면서 만족하는 연속적인 숫자들을 구하면 된다. 그대신 효율성 테스트를 통과하려면 n 보다 큰 수가 나오면 곧바로 for문을 탈출하도록 만들어야한다. 

'프로그래머스 > 기타' 카테고리의 다른 글

행렬의 곱셈  (0) 2021.01.20
캐시 - 카카오 기출  (0) 2021.01.20
프렌즈 4블록 - 카카오 기출  (0) 2021.01.19
N개의 최소공배수  (0) 2021.01.19
이진 변환 반복하기  (0) 2021.01.13