h[l_] := With[{n = Length[l]}, Sum[i, {i, l}]!/Product[Product[1 + l[[i]] - j + Sum[If[l[[k]] >= j, 1, 0], {k, i+1, n}], {j, 1, l[[i]]}], {i, 1, n}] ]; g[n_, i_, l_] := If[n==0 || i==1, h[Join[l, Array[1&, n]]]^2, If[i<1, 0, Sum[g[n - i*j, i-1, Join[l, Array[i&, j]]], {j, 0, n/i}]]]; a[n_] := If[n <= 7, n!, g[n, 7, {}]]; Table[a[n], {n, 1, 30}] (*
Jean-François Alcover, Feb 24 2016, after
Alois P. Heinz (
A214015) *)