A133121 Triangle T(n,k) read by rows = number of partitions of n such that number of parts minus number of distinct parts is equal to k, k = 0..n-1.
1, 1, 1, 2, 0, 1, 2, 2, 0, 1, 3, 2, 1, 0, 1, 4, 2, 3, 1, 0, 1, 5, 4, 2, 2, 1, 0, 1, 6, 6, 3, 3, 2, 1, 0, 1, 8, 7, 5, 4, 2, 2, 1, 0, 1, 10, 8, 10, 3, 5, 2, 2, 1, 0, 1, 12, 13, 8, 9, 4, 4, 2, 2, 1, 0, 1, 15, 15, 14, 10, 8, 5, 4, 2, 2, 1, 0, 1, 18, 21, 15, 16, 8, 9, 4, 4, 2, 2, 1, 0, 1, 22, 25, 23, 17, 17, 7, 10, 4, 4, 2, 2, 1, 0, 1
Offset: 1
Examples
1 1,1 2,0,1 2,2,0,1 3,2,1,0,1 4,2,3,1,0,1 5,4,2,2,1,0,1 6,6,3,3,2,1,0,1 8,7,5,4,2,2,1,0,1 10,8,10,3,5,2,2,1,0,1 12,13,8,9,4,4,2,2,1,0,1 15,15,14,10,8,5,4,2,2,1,0,1 18,21,15,16,8,9,4,4,2,2,1,0,1 From _Gus Wiseman_, Jan 23 2019: (Start) It is possible to augment the triangle to cover the n = 0 and k = n cases, giving: 1 1 0 1 1 0 2 0 1 0 2 2 0 1 0 3 2 1 0 1 0 4 2 3 1 0 1 0 5 4 2 2 1 0 1 0 6 6 3 3 2 1 0 1 0 8 7 5 4 2 2 1 0 1 0 10 8 10 3 5 2 2 1 0 1 0 12 13 8 9 4 4 2 2 1 0 1 0 15 15 14 10 8 5 4 2 2 1 0 1 0 18 21 15 16 8 9 4 4 2 2 1 0 1 0 22 25 23 17 17 7 10 4 4 2 2 1 0 1 0 27 30 32 21 19 16 8 9 4 4 2 2 1 0 1 0 Row seven {5, 4, 2, 2, 1, 0, 1, 0} counts the following integer partitions (empty columns not shown). (7) (322) (2221) (22111) (211111) (1111111) (43) (331) (4111) (31111) (52) (511) (61) (3211) (421) (End)
Links
- Alois P. Heinz, Rows n = 1..141, flattened
Crossrefs
Programs
-
Maple
b:= proc(n, i) option remember; expand(`if`(n=0, 1, `if`(i<1, 0, add(x^`if`(j=0, 0, j-1)*b(n-i*j, i-1), j=0..n/i)))) end: T:= n-> (p-> seq(coeff(p, x, i), i=0..n-1))(b(n$2)): seq(T(n), n=1..16); # Alois P. Heinz, Aug 21 2015
-
Mathematica
b[n_, i_] := b[n, i] = Expand[If[n == 0, 1, If[i < 1, 0, Sum[x^If[j == 0, 0, j-1]*b[n - i*j, i - 1], {j, 0, n/i}]]]]; T[n_] := Function [p, Table[ Coefficient[p, x, i], {i, 0, n - 1}]][b[n, n]]; Table[T[n], {n, 1, 16}] // Flatten (* Jean-François Alcover, Jan 23 2016, after Alois P. Heinz *) Table[Length[Select[IntegerPartitions[n],Length[#]-Length[Union[#]]==k&]],{n,0,15},{k,0,n}] (* augmented version, Gus Wiseman, Jan 23 2019 *)
-
PARI
partitm(n,m,nmin)={ local(resul,partj) ; if( n < 0 || m <0, return([;]) ; ) ; resul=matrix(0,m); if(m==0, return(resul); ) ; for(j=max(1,nmin),n\m, partj=partitm(n-j,m-1,j) ; for(r1=1,matsize(partj)[1], resul=concat(resul,concat([j],partj[r1,])) ; ) ; ) ; if(m==1 && n >= nmin, resul=concat(resul,[[n]]) ; ) ; return(resul) ; } partit(n)={ local(resul,partm,filr) ; if( n < 0, return([;]) ; ) ; resul=matrix(0,n) ; for(m=1,n, partm=partitm(n,m,1) ; filr=vector(n-m) ; for(r1=1,matsize(partm)[1], resul=concat( resul,concat(partm[r1,],filr) ) ; ) ; ) ; return(resul) ; } A133121row(n)={ local(p=partit(n),resul=vector(n),nprts,ndprts) ; for(r=1,matsize(p)[1], nprts=0 ; ndprts=0 ; for(c=1,n, if( p[r,c]==0, break, nprts++ ; if(c==1, ndprts++, if(p[r,c]!=p[r,c-1], ndprts++ ) ; ) ; ) ; ) ; k=nprts-ndprts; resul[k+1]++ ; ) ; return(resul) ; } A133121()={ for(n=1,20, arow=A133121row(n) ; for(k=1,n, print1(arow[k],",") ; ) ; ) ; } A133121() ; \\ R. J. Mathar, Sep 28 2007
-
PARI
tabl(nn) = my(pl = prod(n=1, nn, 1+x^n/(1-y*x^n)) + O(x^nn)); for (k=1, nn-1, print(Vecrev(polcoeff(pl,k,x)))); \\ Michel Marcus, Aug 23 2015
Formula
G.f.: Product_{n>=1} 1 + x^n/(1-y*x^n).
Extensions
More terms from R. J. Mathar, Sep 28 2007