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.
0, 7, 12, 22, 107, 264, 812, 4919, 12154, 24612, 75705, 101805, 236441, 1946174
Offset: 0
Examples
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.
Programs
-
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 *)
-
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
-
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
Extensions
a(13) from Lars Blomberg, Apr 05 2015