Programmers Review
[Lv 2] 숫자의 표현
hanseongbugi
2024. 6. 23. 15:39
https://school.programmers.co.kr/learn/courses/30/lessons/12924
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
숫자의 표현은 연속된 숫자로 이루어져야 한다.
따라서 현재 숫자인 j를 1씩 올려가며 n값에 해당하면 answer값을 늘린다.
이때 합이 n보다 크면 반복을 멈춰 최악의 경우를 벗어나게 하면 해결가능
#include <string>
#include <vector>
using namespace std;
int solution(int n) {
int answer = 0;
for(int i = 1;i <= n;i++){
int sum = 0;
for(int j = i;j <= n;j++){
sum += j;
if(sum > n) break;
if(sum == n)
answer++;
}
}
return answer;
}