Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- C++
- 우선순위큐
- BFS
- 알고리즘
- 유클리드호제법
- 문자열
- Set
- int
- 분할정복
- Sort
- 오블완
- 이분탐색
- vector
- 배열
- stoi
- 정렬
- 백준
- N과M
- 백트래킹
- priority_queue
- DP
- DFS
- map
- 에라토스테네스의 체
- 깊이우선탐색
- 프로그래머스
- 그래프
- 티스토리챌린지
- 다이나믹프로그래밍
- 최소공배수
Archives
- Today
- Total
안녕 세상아,
[프로그래머스/c++] Lv2 숫자의 표현 본문
https://school.programmers.co.kr/learn/courses/30/lessons/12924
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
기준이 n인데 자꾸 예시인 15로 넣어서 자꾸 틀렸던..
문제 자체는 간단한 편이라고 생각한다.
1. 2중 for문을 돌리며 i를 기준으로 계속 더해주면서 합이 n인 것을 찾는다.
2. 만약 cnt가 n과 같으면 answer++를 해주고 break를 한다.
3. cnt가 n보다 크면 필요 없기 때문에 break를 해준다.
#include <string>
#include <vector>
using namespace std;
int solution(int n) {
int answer = 0;
for(int i = 1; i <= n; i++){
int cnt = 0;
for(int j = i; j <= n; j++){
cnt += j;
if(cnt == n){
answer++;
break;
}
else if(cnt > n)
break;
}
}
return answer;
}
'프로그래머스' 카테고리의 다른 글
[프로그래머스/c++] Lv1 시저 암호 (0) | 2024.08.29 |
---|---|
[프로그래머스/c++] Lv2 다음 큰 숫자 (1) | 2024.08.26 |
[프로그래머스/c++] Lv1 삼총사 (0) | 2024.08.25 |
[프로그래머스/c++] Lv1 이상한 문자 만들기 (0) | 2024.08.24 |
[프로그래머스/c++] Lv1 크기가 작은 부분 문자열 (0) | 2024.08.24 |