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.
%I A255400 #49 Jan 15 2025 20:09:47 %S A255400 0,5,10,15,20,264,25,30,35,40,45,101805,50,55,60,65,70 %N A255400 a(n) is the smallest nonnegative integer such that a(n)! contains a string of exactly n consecutive 0's. %C A255400 Most multiples of 5 belong to the sequence (if not all). %C A255400 All terms whose indices are included in A000966 are far bigger than their neighboring terms whose indices are multiples of 5. %C A255400 a(11) is a multiple of 5, we can verify a(11) = a(25448). %e A255400 a(0) = 0 as 0! = 1 does not contain '0'. %e A255400 a(1) = 5 as 5! = 120 contains '0'. %e A255400 a(2) = 10 as 10! = 3628800 contains '00' and 10 is the smallest integer for which the condition is met. %o A255400 (Python) # Python version 2.7 %o A255400 from math import factorial as fct %o A255400 def trailing_zero(n): %o A255400 k=0 %o A255400 while n!=0: %o A255400 n/=5 %o A255400 k+=n %o A255400 return k %o A255400 def A255400(): %o A255400 index = 1 %o A255400 f = 1 %o A255400 while True: %o A255400 if trailing_zero(f) == index: %o A255400 print("A255400("+str(index)+") = " +str(f)) %o A255400 index += 1 %o A255400 elif trailing_zero(f) > index: %o A255400 while True: %o A255400 clnzer = str(fct(f))[:-trailing_zero(f)] %o A255400 if index*'0' in clnzer and (index+1)*'0' not in clnzer: %o A255400 print("A255400("+str(index)+") = " +str(f)) %o A255400 index += 1 %o A255400 f = 0 %o A255400 break %o A255400 f +=1 %o A255400 f +=1 %o A255400 return %o A255400 (Python) %o A255400 import re %o A255400 def A255400(n): %o A255400 f, i, s = 1, 0, re.compile('[0-9]*[1-9]0{'+str(n)+'}[1-9][0-9]*') %o A255400 while s.match(str(f)+'1') is None: %o A255400 i += 1 %o A255400 f *= i %o A255400 return i # _Chai Wah Wu_, Apr 02 2015 %o A255400 (PARI) \\ uses is() from A000966 %o A255400 f(k, special, sz, sz1) = my(f=k!); if (special, s=Str(f/10^valuation(f, 10)), s=Str(k!)); #strsplit(s, sz) - #strsplit(s, sz1); %o A255400 a(n) = if (n==0, return(0)); my(sz= concat(vector(n, k, "0")), sz1=concat(sz, "0"), k=1,special=is(n)); while (f(k, special, sz, sz1) != 1, k++); k; \\ _Michel Marcus_, Oct 25 2023 %Y A255400 Cf. A027868, A000966. %Y A255400 Cf. A254042, A254447, A254448, A254449, A254500, A254501, A254502, A254716, A254717. %Y A255400 Cf. A252652. %K A255400 nonn,base,more %O A255400 0,2 %A A255400 _Martin Y. Champel_, Feb 22 2015