@nprofile1q... What the fuck
def sort_sub(num):
a=int(''.join(sorted(str(num))))
b=int(''.join(sorted(str(num),reverse=True)))
return b-a
def mandel(num):
prev=0
iters=0
while num!=prev:
prev=num
num=sort_sub(prev)
if iters>1000: break
iters+=1
return iters,num
def testrun():
for i in range(1000,9999):
count,dest=mandel(i)
if dest!=6174: print(i,dest,count)
The following numbers end up at 0 instead:
1000 1011 1101 1110 1111 1112 1121 1211 1222 2111 2122 2212 2221 2222 2223 2232 2322 2333 3222 3233 3323 3332 3333 3334 3343 3433 3444 4333 4344 4434 4443 4444 4445 4454 4544 4555 5444 5455 5545 5554 5555 5556 5565 5655 5666 6555 6566 6656 6665 6666 6667 6676 6766 6777 7666 7677 7767 7776 7777 7778 7787 7877 7888 8777 8788 8878 8887 8888 8889 8898 8988 8999 9888 9899 9989 9998
Everything else reaches 6174.