https://school.programmers.co.kr/learn/courses/30/lessons/12924?language=cpp
#include <string>
#include <vector>
using namespace std;
int solution(int n) {
int answer = 1; // 자기자신 + 1
// 두 개의 반복문을 이용해 연속된 숫자로 n이 되면 ++answer로 증가.
for (int i = 1; i <= (n / 2); ++i)
{
int sum = i;
for (int j = i + 1; j < n; ++j)
{
sum += j;
if (sum == n) ++answer;
else if (sum > n) break; // 연속된 숫자의 합이 n보다 커질경우, 반복문 종료
}
}
return answer;
}
'Coding Test > Programmers' 카테고리의 다른 글
[Programmers] Lv 2. 피보나치 수 (0) | 2023.05.22 |
---|---|
[Programmers] Lv 2. 다음 큰 숫자 (0) | 2023.05.19 |
[Programmers] (월간 코드 챌린지 시즌1) Lv 2. 이진 변환 반복하기 (0) | 2023.05.16 |
[Programmers] (스택/큐) Lv 2. 올바른 괄호 (0) | 2023.05.15 |
[Programmers] Lv 2. 최솟값 만들기 (0) | 2023.05.12 |
댓글