본문 바로가기

알고리즘 문제풀이

백준 1110 더하기 사이클 Python 브론즈1

26분 소모

N = int(input())
N_ = N
cnt = 0 #사이클 횟수
while True:
    new_num = 0
    for i in str(N_):
        new_num += int(i)
    N_ = int(str(N_%10) + str(new_num%10))
    cnt += 1
    if N_ == N:
        break
print(cnt)

실수한 부분

문자열로 처리해보려고 했다가 계속 '0'이 더해졌었다.

# N = input()
new_num = 0
cnt = 0 #사이클 횟수
 while int(N) != new_num:
     new_num = 0
     if int(N) < 10:
         N = '0' + N
     for i in N:
         new_num += int(i)
     N = str(int(N[-1]) + new_num%10)
     cnt+= 1
print(cnt)