

A241173


Start with n; add to it any of its digits; repeat; a(n) = minimal number of steps needed to reach a palindrome.


11



0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 3, 2, 3, 2, 1, 4, 3, 2, 1, 1, 0, 3, 3, 2, 3, 3, 2, 4, 1, 3, 3, 0, 2, 2, 2, 1, 3, 2, 1, 2, 1, 3, 0, 2, 2, 3, 4, 2, 1, 4, 3, 2, 2, 0, 4, 3, 1, 3, 1, 4, 3, 1, 2, 2, 0, 3, 4, 3, 1, 3, 2, 2, 4, 2, 3, 0, 3, 1, 1, 3, 2, 3, 1, 2, 2, 3, 0, 5, 1, 2, 1, 4, 5, 2, 3, 4, 5, 0
(list;
graph;
refs;
listen;
history;
text;
internal format)



OFFSET

0,13


COMMENTS

a(n) = 0 iff n is already a palindrome (A002113).
Is it a theorem that a(n) always exists?
a(n) always exists. Proof: A palindrome can be reached by simply adding the initial digit until a palindrome with the same number of digits as the initial number is reached: If no palindrome is reached by then, this will yield a number with initial digit '1'. Thereafter, this procedure will yield the next larger palindrome  either not larger than 19...91 or, after 19...9 + 1 = 20...0, at 20...02.  M. F. Hasler, Apr 26 2014


REFERENCES

Eric Angelini, Posting to Sequence Fans Mailing List, Apr 20 2014


LINKS

David A. Corneth, Table of n, a(n) for n = 0..9999
David A. Corneth, PARI program
David A. Corneth, Steps taken from n as described in name to reach a palindrome


EXAMPLE

Examples for a(10) through a(23):
a(10) = 1 via 10 > 11
a(11) = 0 via 11
a(12) = 3 via 12 > 13 > 16 > 22
a(13) = 2 via 13 > 16 > 22
a(14) = 3 via 14 > 15 > 16 > 22
a(15) = 2 via 15 > 16 > 22
a(16) = 1 via 16 > 22
a(17) = 4 via 17 > 18 > 19 > 20 > 22
a(18) = 3 via 18 > 19 > 20 > 22
a(19) = 2 via 19 > 20 > 22
a(20) = 1 via 20 > 22
a(21) = 1 via 21 > 22
a(22) = 0 via 22
a(23) = 3 via 23 > 25 > 30 > 33


MATHEMATICA

A241173[n_] := Module[{c, nx},
If[n == IntegerReverse[n], Return[0]];
c = 1; nx = n;
While[ ! AnyTrue[nx = Flatten[nx + IntegerDigits[nx]], # == IntegerReverse[#] &], c++];
Return[c]];
Table[A241173[i], {i, 0, 100}] (* Robert Price, Mar 17 2019 *)


PROG

(PARI) a(n, m=0)={ if( m, my(d); for(i=1, #d=vecsort(digits(n), , 12), d[i] && if( m>1, a(n+d[i], m1) /*&& !print1("/*", [n, d[i], m], "* /")*/, is_A002113(n+d[i])) && return(m)), is_A002113(n)  until(a(n, m++), ); m)} \\ Memoization should be implemented to improve performance which remains poor esp. for terms just above 10^k+1.  M. F. Hasler, Apr 26 2014
(PARI) See Corneth link \\ faster than above \\ David A. Corneth, Mar 21 2019


CROSSREFS

Cf. A002113.
A241174 gives the smallest number that takes n steps to reach a palindrome.
Related sequences: A241173, A241174, A241175, A241176, A241177, A241178, A241179, A241180, A241181, A241182, A241183.
Sequence in context: A318056 A096839 A099891 * A096835 A237838 A262880
Adjacent sequences: A241170 A241171 A241172 * A241174 A241175 A241176


KEYWORD

nonn,base


AUTHOR

N. J. A. Sloane, Apr 23 2014


EXTENSIONS

More terms from M. F. Hasler, Apr 26 2014


STATUS

approved



