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
- 오류
- UE5
- W3Schools
- Unity
- dynamic
- DP
- Class
- Unreal Engine 5
- dfs
- Tutorial
- Algorithm
- Material
- 재귀
- 프로그래밍
- C#
- 문제풀이
- python
- c++
- String
- Programming
- Basic
- 기초
- parameter
- 시작해요 언리얼 2022
- 백준
- guide
- loop
- w3school
- 파이썬
- github
Archives
- Today
- Total
행복한 개구리
백준 21.12.21. 2231번 - 분해합 본문

N = int(input())
result = 0
for gen in range(N + 1):
A = list(map(int, str(gen)))
result = gen + sum(A)
if N == result:
print(gen)
break
if gen == N:
print(0)
break
- 우선 중첩반복문이 아닌 0부터 N까지의 반복문으로 실행하였습니다.
- A는 gen의 각 숫자들을 리스트형식으로 만든 것입니다.
- result는 gen과 gen의 각 숫자들의 합을 더한 것입니다.
- N과 result(gen과 gen의 각 자리 숫자들의 합)이 같다면 반복문에서 gen은 0부터 1씩 올라가는 형식이므로 가장 먼저 조건에 일치한 것이 가장 작은 생성자입니다.
- 따라서 gen을 출력하며 반복문을 깹니다.
- 하지만 gen이 입력받은 N과 같아진다면 생성자는 없는 것이므로 0을 출력하고 반복문을 깨줍니다.
'Algorithm > BaekJoon' 카테고리의 다른 글
백준 21.12.28. 1018번 - 체스판 다시 칠하기 (0) | 2021.12.29 |
---|---|
백준 21.12.21. 7568번 - 덩치 (0) | 2021.12.21 |
백준 21.12.19. 2798번 - 블랙잭 (0) | 2021.12.19 |
백준 21.12.14 11729번 - 하노이 탑 이동 순서 (0) | 2021.12.19 |
백준 21.12.12. 2447번 - 별 찍기 - 10 (0) | 2021.12.14 |