OFFSET
1,3
LINKS
Robert G. Wilson v, Table of n, a(n) for n = 1..57
P. De Geest, Palindromic numbers beyond base 10
MATHEMATICA
NextPalindrome[n_] := Block[{l = Floor[ Log[10, n] + 1], idn = IntegerDigits[n]}, If[ Union[idn] == {9}, Return[n + 2], If[l < 2, Return[n + 1], If[ FromDigits[ Reverse[ Take[idn, Ceiling[l/2]] ]] FromDigits[ Take[idn, -Ceiling[l/2]]], FromDigits[ Join[ Take[idn, Ceiling[l/2]], Reverse[ Take[idn, Floor[l/2]] ]]], idfhn = FromDigits[ Take[idn, Ceiling[l/2]]] + 1; idp = FromDigits[ Join[ IntegerDigits[idfhn], Drop[ Reverse[ IntegerDigits[idfhn]], Mod[l, 2]] ]]] ]]]; palQ[n_Integer, base_Integer] := Block[{idn = IntegerDigits[n, base]}, idn == Reverse[idn]]; l = {0}; a = 0; Do[a = NextPalindrome[a]; If[ palQ[a, 12], AppendTo[l, a]], {n, 400000}]; l (* Robert G. Wilson v, Sep 30 2004 *)
Select[Range[0, 10^5],
PalindromeQ[#] && # == IntegerReverse[#, 12] &] (* Robert Price, Nov 09 2019 *)
PROG
(Python)
from gmpy2 import digits
def palQ(n, b): # check if n is a palindrome in base b
....s = digits(n, b)
....return s == s[::-1]
def palQgen10(l): # generator of palindromes in base 10 of length <= 2*l
....if l > 0:
........yield 0
........for x in range(1, l+1):
............for y in range(10**(x-1), 10**x):
................s = str(y)
................yield int(s+s[-2::-1])
............for y in range(10**(x-1), 10**x):
................s = str(y)
................yield int(s+s[::-1])
A029967_list = [n for n in palQgen10(5) if palQ(n, 12)] # Chai Wah Wu, Dec 01 2014
CROSSREFS
KEYWORD
nonn,base
AUTHOR
STATUS
reviewed