[go: up one dir, main page]

login
A065206
One 'Reverse and Add' step is needed to reach a palindrome.
14
10, 12, 13, 14, 15, 16, 17, 18, 20, 21, 23, 24, 25, 26, 27, 29, 30, 31, 32, 34, 35, 36, 38, 40, 41, 42, 43, 45, 47, 50, 51, 52, 53, 54, 56, 60, 61, 62, 63, 65, 70, 71, 72, 74, 80, 81, 83, 90, 92, 100, 102, 103, 104, 105, 106, 107, 108, 110, 112, 113, 114, 115, 116, 117
OFFSET
1,1
COMMENTS
The number of steps starts at 0, so palindromes (A002113) are excluded.
MATHEMATICA
Select[Range[10, 120], !PalindromeQ[#]&&PalindromeQ[#+IntegerReverse[#]]&] (* Requires Mathematica version 10 or later *) (* Harvey P. Dale, Jun 14 2017 *)
PROG
(ARIBAS): function revadd_steps(k, stop: integer); var c, n, m, steps, rev: integer; begin n := 0; c := 0; while c < stop do m := n; rev := int_reverse(m); steps := 0; while steps < k and m <> rev do m := m + rev; rev := int_reverse(m); inc(steps); end; if steps = k and m = rev then write(n, " "); inc(c); end; inc(n); end; end; revadd_steps(1, 66).
(PARI) Rev(x)= { local(d, r=0); while (x>0, d=x-10*(x\10); x\=10; r=r*10 + d); return(r) } digitsIn(x)= { local(d); if (x==0, return(1)); d=1 + log(x)\log(10); if (10^d == x, d++, if (10^(d-1) > x, d--)); return(d) } Palin(x)= { local(d, e, f, i, t, y); if (x==0, return(1)); y=x; d=digitsIn(x); t=10^(d - 1); for (i=1, d\2, f=y-10*(y\10); y\=10; e=x\t; x-=t*e; t/=10; if (e!=f, return(0)) ); return(1) } { n=0; for (m = 0, 10^9, if (!Palin(m) && Palin(Rev(m) + m), write("b065206.txt", n++, " ", m); if (n==1000, return)) ) } \\ Harry J. Smith, Oct 13 2009
(Haskell)
a065206 n = a065206_list !! (n-1)
a065206_list = filter ((== 1) . a136522 . a056964) a029742_list
-- Reinhard Zumkeller, Oct 14 2011
CROSSREFS
KEYWORD
nonn,base
AUTHOR
Klaus Brockhaus, Oct 21 2001
EXTENSIONS
Offset corrected by Harry J. Smith, Oct 13 2009
STATUS
approved