%I #26 Sep 27 2018 05:06:44
%S 1,4,1,11,2,1,28,7,2,1,62,15,5,2,1,137,38,13,5,2,1,278,76,28,11,5,2,1,
%T 561,164,60,26,11,5,2,1,1080,316,124,52,24,11,5,2,1,2051,623,244,108,
%U 50,24,11,5,2,1,3778,1156,469,208,100,48,24,11,5,2,1,6885,2160,886,404,194,98,48,24,11,5,2,1
%N Triangle read by rows: T(n,k) = count of parts k in all plane partitions of n.
%C For large n the rows end in A091360 = partial sums of A000219 (count of plane partitions).
%H Alois P. Heinz, <a href="/A092288/b092288.txt">Rows n = 1..50, flattened</a>
%H M. F. Hasler, <a href="/A092288/a092288.txt">A092288, rows 1 - 18</a>.
%e Triangle begins:
%e 1;
%e 4, 1;
%e 11, 2, 1;
%e 28, 7, 2, 1;
%e 62, 15, 5, 2, 1;
%e 137, 38, 13, 5, 2, 1;
%e ...
%t Table[Length /@ Split[Sort[Flatten[planepartitions[k]]]], {k, 12}]
%o (PARI) A092288_row(n, c=vector(n), m, k)={for(i=1, #n=PlanePartitions(n), for(j=1,#m=n[i], for(i=1,#k=m[j], c[k[i]]++))); c} \\ See A091298 for PlanePartitions(). See below for more efficient code.
%o M92288=[]; A092288(n,k,L=0)={n>1||return(if(L,[n,n==k],n==k)); if(#L&& #L<3, my(j=setsearch(M92288,[[n,k,L],[]],1)); j<=#M92288&& M92288[j][1]==[n,k,L]&& return(M92288[j][2])); my(c(p)=sum(i=1,#p,p[i]==k),S=[0,0],t); for(m=1,n,my(P=if(L,select(p->vecmin(L-Vecrev(p,#L))>=0, partitions(m,L[1],#L)), partitions(m))); if(m<n,for(i=1,#P,t=A092288(n-m,k,Vecrev(P[i])); S+=[t[1], t[1]*c(P[i])+t[2]], S+=[#P,vecsum(apply(c,P))])); if(L, #L<3&& M92288= setunion(M92288,[[[n,k,L],S]]);S,S[2])} \\ _M. F. Hasler_, Sep 26 2018
%Y Column k=1 gives A090539.
%Y Row sums give A319648.
%Y T(2n+1,n+1) gives A091360.
%Y Cf. A000219, A066633.
%K nonn,tabl
%O 1,2
%A _Wouter Meeussen_, Feb 01 2004