OFFSET
0,3
COMMENTS
Sort the digits of an integer and subtract the result from the original. Continue with the result until you reach 0. The sequence gives the least integer that needs n steps to reach 0.
LINKS
David W. Wilson and Reinhard Zumkeller, Table of n, a(n) for n = 0..100 (a(n) for n = 1..55 from Reinhard Zumkeller).
EXAMPLE
60 is the smallest number that needs 3 steps to reach 0: 60 -> 60 - 06 = 54 -> 54 - 45 = 9 -> 9 - 9 = 0, hence a(3) = 60.
MATHEMATICA
Persist[n_] := Length[NestWhileList[# - FromDigits[Sort[IntegerDigits[#]]] &, n, # != 0 &]] - 1; nn = 20; t = Table[0, {nn}]; cnt = 0; k = 0; While[cnt < nn, k++; c = Persist[k]; If[c <= nn && t[[c]] == 0, t[[c]] = k; cnt++]]; t (* Harvey P. Dale, Mar 24 2011 *)
persist[n_]:=Length[NestWhileList[#-FromDigits[Sort[IntegerDigits[#]]]&, n, #!=0&]]-1; Module[ {nn=103*10^4, tbl}, tbl=Table[{n, persist[n]}, {n, 0, nn}]; DeleteDuplicates[ tbl, GreaterEqual[ #1[[2]], #2[[2]]]&]][[;; , 1]] (* Harvey P. Dale, Sep 03 2023 *)
PROG
(Haskell)
import Data.List (elemIndex)
import Data.Maybe (fromJust)
a065641 n = a065641_list !! (n-1)
a065641_list = map (fromJust . (`elemIndex` a193582_list)) [1..]
-- Reinhard Zumkeller, Aug 10 2011
CROSSREFS
KEYWORD
nonn,base,nice
AUTHOR
Ulrich Schimke (ulrschimke(AT)aol.com), Dec 03 2001
EXTENSIONS
Added a(0) = 0. David W. Wilson, Jan 08 2017
STATUS
approved