OFFSET
0,3
COMMENTS
A way of writing n as a (nonnegative) linear combination of a finite sequence y is any sequence of pairs (k_i,y_i) such that k_i >= 0 and Sum k_i*y_i = n. For example, the pairs ((3,1),(1,1),(1,1),(0,2)) are a way of writing 5 as a linear combination of (1,1,1,2), namely 5 = 3*1 + 1*1 + 1*1 + 0*2. Of course, there are A000041(n) ways to write n as a linear combination of (1..n).
LINKS
Alois P. Heinz, Table of n, a(n) for n = 0..500
EXAMPLE
The a(1) = 1 through a(5) = 10 ways:
1*1 1*2 1*3 1*4 1*5
2*1 3*1 2*2 5*1
0*2+3*1 4*1 0*2+5*1
1*2+1*1 0*2+4*1 0*3+5*1
0*3+4*1 0*4+5*1
1*2+2*1 1*2+3*1
1*3+1*1 1*3+1*2
2*2+0*1 1*3+2*1
1*4+1*1
2*2+1*1
MATHEMATICA
combs[n_, y_]:=With[{s=Table[{k, i}, {k, y}, {i, 0, Floor[n/k]}]}, Select[Tuples[s], Total[Times@@@#]==n&]];
Table[Sum[Length[combs[n, y]], {y, Select[Join@@IntegerPartitions/@Range[n], UnsameQ@@#&]}], {n, 0, 15}]
PROG
(Python)
from itertools import combinations
from collections import Counter
from sympy.utilities.iterables import partitions
def A365002(n):
aset = Counter(tuple(sorted(set(p))) for p in partitions(n))
return sum(sum(aset[t] for t in aset if set(t).issubset(set(q))) for l in range(1, n+1) for q in combinations(range(1, n+1), l) if sum(q)<=n) # Chai Wah Wu, Sep 20 2023
CROSSREFS
KEYWORD
nonn
AUTHOR
Gus Wiseman, Aug 22 2023
EXTENSIONS
a(16)-a(34) from Chai Wah Wu, Sep 20 2023
a(35)-a(38) from Chai Wah Wu, Sep 21 2023
a(0)=1 and a(39)-a(41) from Alois P. Heinz, Jan 11 2024
STATUS
approved