c = Binomial;
g[n_] := g[n] = n*2^(n - 1);
h[n_] := h[n] = Module[{k}, For[k = If[n == 0, 0,
h[n - 1]], True, k++, If[g[k] >= n, Return[k]]]];
b[n_, i_, k_, p_] := b[n, i, k, p] = If[n == 0, p!,
If[i < 1 || k < h[n], 0, Sum[b[n - i*j, Min[n - i*j, i - 1],
k, p + j]*c[c[k, i], j], {j, 0, n/i}]]];
T[n_, k_] := Sum[b[n, n, i, 0]*(-1)^(k - i)*c[k, i], {i, 0, k}];