cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A069862 Smallest k such that n divides the concatenation of numbers from (n+1) to (n+k), where (n+1) is on the most significant side.

Original entry on oeis.org

1, 2, 2, 2, 5, 2, 9, 4, 8, 10, 10, 8, 22, 16, 5, 4, 2, 8, 3, 20, 20, 10, 17, 12, 25, 22, 26, 16, 25, 20, 110, 20, 11, 2, 20, 8, 998, 52, 38, 20, 60, 20, 4, 32, 35, 42, 50, 20, 96, 50, 2, 96, 93, 26, 10, 20, 3, 50, 44, 20, 46, 40, 45, 40, 50, 32, 86, 32, 17, 20, 75, 72, 26, 926, 50
Offset: 1

Views

Author

Amarnath Murthy, Apr 18 2002

Keywords

Comments

Minimum number of consecutive subsequent integers after n that must be concatenated together in ascending order such that n divides the concatenated term.
Concatenation always begins at n+1. Note that multiples of 11 seems to require more terms than any other number. 385 requires 9860. 451 requires 100270 terms be concatenated together into a 495,000 digit number. - Chuck Seggelin, Oct 29 2003; corrected by Chai Wah Wu, Oct 19 2014

Examples

			a(7) = 9 as 7 divides 8910111213141516 the concatenation of numbers from 8(= 7+1) to 16 (= 7+9).
a(5) = 5 because 5 will divide the number formed by concatenating the 5 integers after 5 in ascending order (i.e. 678910). a(385) = 9860 because 385 will divide the concatenation of 386,387,388,...,10245.
		

Crossrefs

Programs

  • Maple
    c[1] := 1:for n from 2 to 172 do k := 1:g := (n+k) mod n:while(true) do k := k+1:b := convert(n+k,base,10):g := (g*10^nops(b)+n+k) mod n: if((g mod n)=0) then c[n] := k:break:fi:od:od:seq(c[l],l=1..172);
  • Mathematica
    f[n_] := Block[{k = n + 1}, d = k; While[ !IntegerQ[d/n], k++; d = d*10^Floor[Log[10, k] + 1] + k]; k - n]; Table[ f[n], {n, 1, 75}] (* Robert G. Wilson v, Nov 04 2003 *)
  • Python
    def A069862(n):
        nk, kr, r = n+1, 1, 1 if n > 1 else 0
        while r:
            nk += 1
            kr = (kr + 1) % n
            r = (r*(10**len(str(nk)) % n)+kr) % n
        return nk-n # Chai Wah Wu, Oct 20 2014

Extensions

More terms from Sascha Kurz, Jan 28 2003