|
|
A254524
|
|
n is the a(n)-th positive integer having its digitsum.
|
|
18
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 5, 5, 5, 5, 5, 5, 4, 3, 2, 1, 6, 6, 6, 6, 6, 5, 4, 3, 2, 1, 7, 7, 7, 7, 6, 5, 4, 3, 2, 1, 8, 8, 8, 7, 6, 5, 4, 3, 2, 1, 9, 9, 8, 7, 6, 5, 4, 3, 2, 1, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 10, 5
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,10
|
|
COMMENTS
|
|
|
LINKS
|
|
|
EXAMPLE
|
35 is the 4th positive integer having digitsum 8 (the others before are 8, 17 and 26) so a(35) = 4.
|
|
MATHEMATICA
|
c[n_, k_] := If[n >= k, Binomial[n, k], 0]; b[s_, q_, n_] := (s1 = q; If[s <= q*(n - 1), s1 = s + q; Sum[(-1)^i*c[q, i]*c[s1 - 1 - n*i, q - 1], {i, 0, q - 1}], 0]); a[n_] := (r = 1; v = IntegerDigits[n]; l = v[[-1]]; For[i = Length[v] - 1, i >= 1, i--, For[j = 1, j <= v[[i]], j++, r += b[l + j, Length[v] - i, 10]]; l += v[[i]]]; r); Table[a[n], {n, 1, 110}] (* Jean-François Alcover, Nov 14 2016, adapted from PARI *)
With[{nn=400}, #[[3]]&/@Sort[Flatten[Table[Flatten[#, 1]&/@MapIndexed[ List, Select[ Table[{n, Total[IntegerDigits[n]]}, {n, nn}], #[[2]]==k&]], {k, nn}], 1]]](* Harvey P. Dale, Mar 29 2020 *)
|
|
PROG
|
(PARI)
\\This algorithm needs a modified binomial.
C(n, k)=if(n>=k, binomial(n, k), 0)
\\ways to roll s-q with q dice having sides 0 through n - 1.
b(s, q, n)=if(s<=q*(n-1), s+=q; sum(i=0, q-1, (-1)^i*C(q, i)*C(s-1-n*i, q-1)), 0)
\\main algorithm
a(n)={r = 1; v=digits(n); l=v[#v]; forstep(i = #v-1, 1, -1, for(j=1, v[i], r+=b(l+j, #v-i, 10)); l+=v[i]); r}
(Haskell)
import Data.IntMap (empty, findWithDefault, insert)
a254524 n = a254524_list !! (n-1)
a254524_list = f 1 empty where
f x m = y : f (x + 1) (insert q (y + 1) m) where
y = findWithDefault 1 q m; q = a007953 x
|
|
CROSSREFS
|
Cf. A286478 (analogous sequence for factorial base).
|
|
KEYWORD
|
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|