[백준/파이썬] 9047번 6174 풀이

업데이트:



문제 정보


풀이

문제

4자리 수에 대해 내림차순 수와 오름차순 수의 차를 반복해 6174에 도달할 때까지 횟수를 세는 문제입니다.

코드

for T in range(int(input())):
    n = input()
    cnt = 0
    while n != '6174':
        cnt += 1
        tmp = ''.join(sorted(n))
        n = '%04d' %(int(tmp[::-1]) - int(tmp))
    print(cnt)

설명

각 단계마다 숫자를 정렬해 큰 수-작은 수를 만들고, 앞자리 0 보존을 위해 '%04d' 형식으로 문자열을 유지합니다.



댓글남기기