728x90
programmers.co.kr/learn/courses/30/lessons/12924
#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 |