찔끔찔끔씩😎

[백준] 2231번 분해합- python 본문

Algorithm/백준

[백준] 2231번 분해합- python

댕경 2021. 11. 11. 15:52
728x90

https://www.acmicpc.net/problem/2231


문제 

n : 216 이 주어졌을때

m: 198 로, 1 + 9 + 8 +198 = 216 이 되는 가장 작은 생성자 구하기


해결

216의 생성자가 될 수 있는 최소값을 구하기 위해 

1 ~ 216 까지 반복하며 합을 구한다. 답이 나오면 바로 print


코드

n = int(input())

answer = 0 

for i in range(1,n+1): 
    temp = list(map(int,str(i))) # 198 ->[1,9,8]
    sum_num = i + sum(temp) # 198 + (1+9+8)
    if(sum_num==n):
        answer = i
        break

print(answer)
Comments