login
A252652
a(n) is the smallest nonnegative integer such that a(n)! contains a string of exactly n consecutive 0's, not including trailing 0's.
4
0, 7, 12, 22, 107, 264, 812, 4919, 12154, 24612, 75705, 101805, 236441, 1946174
OFFSET
0,2
EXAMPLE
a(0) = 0 since 0! = 1, which does not contain a 0.
a(1) = 7 since 7! = 5040, which contains a 0 other than the trailing 0, and no integer smaller than 7 satisfies this requirement. (a(1) is not 5; 5! = 120, which has no 0 digits other than the trailing 0.)
a(2) = 12 since 12! = 479001600; discarding the trailing 0's leaves 4790016, which contains a string of exactly two consecutive 0's, and no integer smaller than 12 satisfies this requirement.
MATHEMATICA
A252652[n_] := Module[{m = 0, s, t},
If[n == 0, While[MemberQ[IntegerDigits[m!], 0], m++]; m,
t = Table[0, n];
While[s = Split[IntegerDigits[m!]];
If[MemberQ[Last[s], 0], s = Delete[s, -1]]; ! MemberQ[s, t],
m++]; m]];
Table[A252652[n], {n, 0, 13}] (* Robert Price, Mar 21 2019 *)
PROG
(Python)
import re
def A252652(n):
if n == 0:
return 0
f, i, s = 1, 0, re.compile('[0-9]*[1-9]0{'+str(n)+'}[1-9][0-9]*')
while s.match(str(f)) == None:
i += 1
f *= i
return i # Chai Wah Wu, Dec 29 2015
(PARI) f(k, sz, sz1) = my(f=k!, s=Str(f/10^valuation(f, 10))); #strsplit(s, sz) - #strsplit(s, sz1);
a(n) = if (n==0, return(0)); my(sz=concat(vector(n, k, "0")), sz1=concat(sz, "0"), k=1); while (f(k, sz, sz1) != 1, k++); k; \\ Michel Marcus, Oct 25 2023
KEYWORD
nonn,base,more
AUTHOR
Jon E. Schoenfield, Mar 22 2015, at the suggestion of Martin Y. Champel
EXTENSIONS
a(13) from Lars Blomberg, Apr 05 2015
STATUS
approved