A168644 Triangle read by rows: T(n, k) = [x^k] p(x,n), where p(x,0) = 1, p(x,n) = (7 - n)*(1+x)^n - (6-n)*(1 + x^n) for 1 <= n <= 5, and p(x,n) = 5*(1 + x)^n - Sum_{i=0..3} (Sum_{j=0..i} binomial(n, j)*(x^j + x^(n-j))) + (1/6)*n*(n - 1)*(n - 5)*x^(n-3) for n >= 6.
1, 1, 1, 1, 10, 1, 1, 12, 12, 1, 1, 12, 18, 12, 1, 1, 10, 20, 20, 10, 1, 1, 12, 45, 65, 45, 12, 1, 1, 14, 63, 140, 154, 63, 14, 1, 1, 16, 84, 224, 350, 252, 84, 16, 1, 1, 18, 108, 336, 630, 630, 384, 108, 18, 1, 1, 20, 135, 480, 1050, 1260, 1050, 555, 135, 20, 1
Offset: 0
Examples
Triangle begins: 1; 1, 1; 1, 10, 1; 1, 12, 12, 1; 1, 12, 18, 12, 1; 1, 10, 20, 20, 10, 1; 1, 12, 45, 65, 45, 12, 1; 1, 14, 63, 140, 154, 63, 14, 1; 1, 16, 84, 224, 350, 252, 84, 16, 1; 1, 18, 108, 336, 630, 630, 384, 108, 18, 1; 1, 20, 135, 480, 1050, 1260, 1050, 555, 135, 20, 1; ...
Links
- G. C. Greubel, Rows n = 0..50 of the triangle, flattened
Programs
-
Mathematica
(* First program *) p[x_, n_]:= If[n<2, (1+x)^n, 5*(1+x)^n -(1+x^n) - If[n>2, x^n +n*x^(n-1) + n*x +1, 1+x^n] - If[n>3, x^n +n*x^(n-1) +Binomial[n,2]*(x^2 +x^(n-2)) + n*x +1, 1+x^n] - If[n>4, x^n +n*x^(n-1) +Binomial[n,2]*(x^2 +x^(n-3) +x^(n-2)) + Binomial[n,3]*x^3 +n*x +1, 1+x^n]]; Flatten[Table[CoefficientList[p[x, n], x], {n, 0, 10}]] (* Second program *) f[n_, k_]:= With[{B=Boole}, If[k==0 || k==n, 1, If[1<=n<=5, (7-n) - (6-n)*(B[k==0] + B[k==n]), If[n==6, (k+1)*B[k<4] + (n-k+1)*B[k>3] - B[k==3], (k + 1)*B[k<4] + 5*B[3
n-4]]]]]; A168644[n_, k_]:= Binomial[n,k]*f[n,k] + If[n>5, n*(n-1)*(n-5)*Boole[k==n-3]/6, 0]; Table[A168644[n,k], {n,0,12}, {k,0,n}]//Flatten (* G. C. Greubel, Apr 06 2025 *) -
Maxima
T(n, k) := if k = 0 or k = n then 1 else (if n <= 5 then (7 - n)*binomial(n, k) else ratcoef(5*(x + 1)^n - sum(sum(binomial(n, j)*(x^j + x^(n - j)), j, 1, i), i, 1, 3) + (1/6)*n*(n - 1)*(n - 5)*x^(n - 3), x, k))$ create_list(T(n, k), n, 0, 12, k, 0, n); /* Franck Maminirina Ramaharo, Jan 02 2019 */
-
SageMath
def f(n, k): if k==0 or k==n: return 1 elif 0
3) - int(k==3) else: return (k+1)*int(k<4) + 5*int(3 n-4) def A168644(n, k): if n<6: return binomial(n, k)*f(n, k) else: return binomial(n,k)*f(n,k) + n*(n-1)*(n-5)*int(k==n-3)//6 print(flatten([[A168644(n, k) for k in range(n+1)] for n in range(13)])) # G. C. Greubel, Apr 06 2025
Extensions
Edited by Franck Maminirina Ramaharo, Jan 02 2019