문제
풀이
- 브루트 포스, 완전탐색, 재귀
- 기존 숫자의 오른쪽과 합한 숫자의 오른쪽을 더하고, 그 합이 n과 같아질 때까지 재귀함수 반복
코드
n = int(input())
narr = list(map(int, str(n))) # 숫자를 리스트로
cnt = 0
def cycle(narr, n, cnt):
result = list(map(int, str(sum(narr))))
hap = narr[-1] * 10 + result[-1] # 기존숫자의 오른쪽과, 합한 숫자의 오른쪽 더하기
cnt += 1
if hap == n:
print(cnt)
else:
hap = list(map(int, str(hap))) # 숫자를 리스트로
cycle(hap, n, cnt)
cycle(narr, n, cnt)
'코딩테스트 > BOJ' 카테고리의 다른 글
[백준/파이썬] 1145번: 적어도 대부분의 배수 (Python) (0) | 2021.04.16 |
---|---|
[백준/파이썬] 2851번: 슈퍼 마리오 (Python) (0) | 2021.04.15 |
[백준/파이썬] 7568번: 덩치 (Python) (0) | 2021.04.15 |
[백준/파이썬] 1969번: DNA (Python) (0) | 2021.04.14 |