728x90
반응형
문제 출처:https://www.acmicpc.net/problem/2231
2231번: 분해합
어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이
www.acmicpc.net
풀이:
n = int(input())
res = 0 # 결과값
for i in range(1,n+1): # 1부터 받은 숫자까지 범위 설정
N = sum(list(map(int,str(i)))) # 각 자릿수 합
a = i+N # 생성자 구하기
if(a == n): # 받은 값과 생성자가 같을떄
res = i # 결과값 설정
break # 포문 탈출
print(res)
반응형
댓글