login
This site is supported by donations to The OEIS Foundation.

 

Logo


Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A061906 Obtain m by omitting trailing zeros from n; a(n) = smallest k such that k*m is a palindrome. 4
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 21, 38, 18, 35, 17, 16, 14, 9, 1, 12, 1, 7, 29, 21, 19, 37, 9, 8, 1, 14, 66, 1, 8, 15, 7, 3, 13, 15, 1, 16, 6, 23, 1, 13, 9, 3, 44, 7, 1, 19, 13, 4, 518, 1, 11, 3, 4, 13, 1, 442, 7, 4, 33, 9, 1, 11, 4, 6, 1, 845, 88, 4, 3, 7, 287, 1, 11, 6, 1, 12345679, 8 (list; graph; refs; listen; history; text; internal format)
OFFSET

0,13

COMMENTS

Every positive integer is a factor of a palindrome, unless it is a multiple of 10 (D. G. Radcliffe, see Links).

Every integer n has a multiple of the form 99...9900...00. To see that n has a multiple that's a palindrome (allowing 0's on the left) with even digits, let 9n divide 99...9900...00; then n divides 22...2200...00. - Dean Hickerson, Jun 29 2001

LINKS

Chai Wah Wu, Table of n, a(n) for n = 0..8180

P. De Geest, Smallest multipliers to make a number palindromic.

EXAMPLE

For n = 30 we have m = 3, 1*m = 3 is a palindrome, so a(30) = 1. For n = m = 12 the smallest palindromic multiple is 21*m = 252, so a(12) = 21.

PROG

(ARIBAS): stop := 20000000; for n := 0 to maxarg do k := 1; test := true; while test and k < stop do mp := omit_trailzeros(n)*k; if test := mp <> int_reverse(mp) then inc(k); end; end; if k < stop then write(k, " "); else write(-1, " "); end; end;

(Python)

from __future__ import division

def palgen(l, b=10): # generator of palindromes in base b of length <= 2*l

....if l > 0:

........yield 0

........for x in range(1, l+1):

............n = b**(x-1)

............n2 = n*b

............for y in range(n, n2):

................k, m = y//b, 0

................while k >= b:

....................k, r = divmod(k, b)

....................m = b*m + r

................yield y*n + b*m + k

............for y in range(n, n2):

................k, m = y, 0

................while k >= b:

....................k, r = divmod(k, b)

....................m = b*m + r

................yield y*n2 + b*m + k

def A050782(n, l=10):

....if n % 10:

........x = palgen(l)

........next(x)  # replace with x.next() in Python 2.x

........for i in x:

............q, r = divmod(i, n)

............if not r:

................return q

........else:

............return 'search limit reached.'

....else:

........return 0

def A061906(n, l=10):

....return A050782(int(str(n).rstrip('0')), l) if n > 0 else 1

# Chai Wah Wu, Dec 30 2014

CROSSREFS

Cf. A050782, A062293, A061915, A061916, A061816. Values of k*m are given in A061906.

Sequence in context: A109211 A224701 A050782 * A139768 A176071 A072708

Adjacent sequences:  A061903 A061904 A061905 * A061907 A061908 A061909

KEYWORD

base,easy,nonn

AUTHOR

Klaus Brockhaus, Jun 25 2001

STATUS

approved

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recent
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified March 19 00:15 EDT 2019. Contains 321306 sequences. (Running on oeis4.)