A136212 Triple factorial array, read by antidiagonals, where row n+1 is generated from row n by first removing terms in row n at positions {[m*(m+5)/6], m >= 0} and then taking partial sums, starting with all 1's in row 0.
1, 1, 1, 4, 2, 1, 28, 10, 3, 1, 280, 80, 18, 4, 1, 3640, 880, 162, 28, 5, 1, 58240, 12320, 1944, 280, 39, 6, 1, 1106560, 209440, 29160, 3640, 418, 52, 7, 1, 24344320, 4188800, 524880, 58240, 5714, 600, 66, 8, 1, 608608000, 96342400, 11022480, 1106560, 95064
Offset: 0
Examples
Square array begins: (1),(1),(1),1,(1),1,(1),1,(1),1,1,(1),1,1,(1),1,1,(1),1,1,1,(1),1,1,1,...; (1),(2),(3),4,(5),6,(7),8,(9),10,11,(12),13,14,(15),16,17,(18),19,20,21,..; (4),(10),(18),28,(39),52,(66),82,(99),118,138,(159),182,206,(231),258,286,..; (28),(80),(162),280,(418),600,(806),1064,(1350),1696,2074,(2485),2966,3484,..; (280),(880),(1944),3640,(5714),8680,(12164),16840,(22194),29080,36824,(45474),.; (3640),(12320),(29160),58240,(95064),151200,(219108),315440,(428652),581680,...; (58240),(209440),(524880),1106560,(1864456),3082240,...; where terms in parenthesis are at positions {[m*(m+5)/6], m>=0} and are removed before taking partial sums to obtain the next row. To generate the array, start with all 1's in row 0; from then on, obtain row n+1 from row n by first removing terms in row n at positions {[m*(m+5)/6], m>=0} and then taking partial sums. For example, to generate row 2 from row 1: [(1),(2),(3),4,(5),6,(7),8,(9),10,11,(12),13,14,(15),16,17,(18),...], remove terms at positions [0,1,2,4,6,8,11,14,17,...] to get: [4, 6, 8, 10,11, 13,14, 16,17, 19,20,21, 23,24,25, 27,28,29, ...] then take partial sums to obtain row 2: [4, 10, 18, 28,39, 52,66, 82,99, 118,138,159, 182,206,231, ...]. Continuing in this way will generate all the rows of this array.
Crossrefs
Programs
-
Mathematica
t[n_, k_] := t[n, k] = Module[{a = 0, m = 0, c = 0, d = 0}, If[n == 0, a = 1, While[d <= k, If[c == Quotient[(m*(m + 5)), 6], m += 1, a += t[n - 1, c]; d += 1]; c += 1]]; a]; Table[t[n - k, k], {n, 0, 9}, {k, 0, n}] // Flatten (* Jean-François Alcover, Mar 06 2013, translated from Pari *)
-
PARI
{T(n, k)=local(A=0, m=0, c=0, d=0); if(n==0, A=1, until(d>k, if(c==(m*(m+5))\6, m+=1, A+=T(n-1, c); d+=1); c+=1)); A}
Comments