login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A260736
a(0) = 0; for n >= 1, a(n) = A000035(n) + a(A257684(n)); in the factorial representation of n the number of digits with maximal possible value allowed in its location.
13
0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 1, 2, 1, 2, 2, 3, 0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 1, 2, 1, 2, 2, 3, 0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 1, 2, 1, 2, 2, 3, 0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 0, 1, 0, 1, 1, 2, 1, 2, 1, 2, 2, 3, 1, 2, 1, 2, 2, 3, 1, 2, 1, 2, 2, 3, 1, 2, 1, 2, 2, 3, 2, 3, 2, 3, 3, 4, 0
OFFSET
0,6
COMMENTS
In the factorial representation of n, given as {d_k, ..., d_3, d_2, d_1}, the maximal allowed digit for any position j is j. This sequence gives the number of digits in the whole representation [A007623(n)] that attain that maximum allowed value.
FORMULA
a(0) = 0; for n >= 1, a(n) = A000035(n) + a(A257684(n)).
Other identities. For all n >= 1:
a(n!-1) = n-1. [n!-1 also gives the first position where n-1 occurs.]
EXAMPLE
For n=19, which has factorial representation "301", the digits at position 1 and 3, namely "1" and "3" are equal to their one-based position index, in other words, the maximal digits allowed in those positions (while "0" at position 2 is not), thus a(19) = 2.
MATHEMATICA
a[n_] := Module[{k = n, m = 2, c = 0, r}, While[{k, r} = QuotientRemainder[k, m]; k != 0 || r != 0, If[r == m - 1, c++]; m++]; c]; Array[a, 100, 0] (* Amiram Eldar, Jan 23 2024 *)
PROG
(Scheme, with memoization-macro definec)
(definec (A260736 n) (if (zero? n) 0 (+ (A000035 n) (A260736 (A257684 n)))))
(Python)
from sympy import factorial as f
def a007623(n, p=2): return n if n<p else a007623(n//p, p+1)*10 + n%p
def a257684(n):
x=str(a007623(n))[:-1]
y="".join(str(int(i) - 1) if int(i)>0 else '0' for i in x)[::-1]
return 0 if n==1 else sum(int(y[i])*f(i + 1) for i in range(len(y)))
def a(n): return 0 if n==0 else n%2 + a(a257684(n))
print([a(n) for n in range(101)]) # Indranil Ghosh, Jun 20 2017
CROSSREFS
Cf. also A257511.
Sequence in context: A141747 A239706 A328616 * A342656 A293896 A066416
KEYWORD
nonn,base
AUTHOR
Antti Karttunen, Aug 27 2015
STATUS
approved