import sys
#분해합 구하는 함수
def deSum(n):
num=str(n)
s=n
for i in range(len(num)):
s=s+int(num[i])
return s
# 생성자 구하는 함수
def deCon(m):
for i in range(m):
if m ==deSum(i):
return i
N=int(sys.stdin.readline())
print(deCon(N))
문제풀이
먼저 분해합을 구하는 함수를 구현했다.
자릿수를 알기위해 str로 변환해주고 각각 자리값들을 다 더해준다.
그다음은 생성자 함수를 만들어줬다. 0부터 비교하여 분해합 결과와 같을 때 값을 반환해 주었다.
피드백
처음에 분해합이라는 개념이 잘 이해가 안가서 문제풀기가 어려웠다.
'알고리즘 > 문제풀이' 카테고리의 다른 글
[Python] 백준 2720 "세탁소사장동혁_greedy" 문제풀이 (0) | 2021.09.28 |
---|---|
[Python] 백준 15829 "Hashing_해싱" 문제풀이 (0) | 2021.09.16 |
[Python] 백준 2798 "블랙잭_완전탐색" 문제풀이 (0) | 2021.09.15 |
[Python] 백준 12605 "단어 순서 뒤집기_스택" 문제풀이 (0) | 2021.09.09 |
[Python] 백준 17608 "막대기_스택" 문제풀이 (0) | 2021.09.08 |