|
MAPLE
|
h:= l-> (n-> add(i, i=l)!/mul(mul(1+l[i]-j+add(`if`(j>
l[k], 0, 1), k=i+1..n), j=1..l[i]), i=1..n))(nops(l)):
g:= (n, i, k, l)-> `if`(n=0 or i=1, h([l[], 1$n])^k,
g(n, i-1, k, l)+g(n-i, min(i, n-i), k, [l[], i])):
a:= n-> g(n$3, []):
seq(a(n), n=0..15);
|