cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A382342 Triangle read by rows: T(n, k) is the number of partitions of n into k parts where 0 <= k <= n, and each part is one of two kinds.

Original entry on oeis.org

1, 0, 2, 0, 2, 3, 0, 2, 4, 4, 0, 2, 7, 6, 5, 0, 2, 8, 12, 8, 6, 0, 2, 11, 18, 17, 10, 7, 0, 2, 12, 26, 28, 22, 12, 8, 0, 2, 15, 34, 46, 38, 27, 14, 9, 0, 2, 16, 46, 64, 66, 48, 32, 16, 10, 0, 2, 19, 56, 94, 100, 86, 58, 37, 18, 11, 0, 2, 20, 70, 124, 152, 136, 106, 68, 42, 20, 12
Offset: 0

Views

Author

Peter Dolland, Mar 27 2025

Keywords

Examples

			Triangle starts:
 0 : [1]
 1 : [0, 2]
 2 : [0, 2,  3]
 3 : [0, 2,  4,  4]
 4 : [0, 2,  7,  6,  5]
 5 : [0, 2,  8, 12,  8,   6]
 6 : [0, 2, 11, 18, 17,  10,  7]
 7 : [0, 2, 12, 26, 28,  22, 12,  8]
 8 : [0, 2, 15, 34, 46,  38, 27, 14,  9]
 9 : [0, 2, 16, 46, 64,  66, 48, 32, 16, 10]
10 : [0, 2, 19, 56, 94, 100, 86, 58, 37, 18, 11]
  ...
		

Crossrefs

Row sums give A000712.
Cf. A008284 (1-kind case), A022597, A381895, A382345.

Programs

  • Maple
    b:= proc(n, i) option remember; expand(`if`(n=0, 1, `if`(i<1, 0,
          add(x^j*b(n-i*j, min(n-i*j, i-1))*(j+1), j=0..n/i))))
        end:
    T:= (n, k)-> coeff(b(n$2), x, k):
    seq(seq(T(n, k), k=0..n), n=0..11);  # Alois P. Heinz, Mar 27 2025
  • Mathematica
    b[n_, i_] := b[n, i] = Expand[If[n == 0, 1, If[i < 1, 0, Sum[x^j*b[n - i*j, Min[n - i*j, i - 1]]*(j + 1), {j, 0, n/i}]]]];
    T[n_, k_] := Coefficient[b[n, n], x, k];
    Table[Table[T[n, k], {k, 0, n}], {n, 0, 11}] // Flatten (* Jean-François Alcover, Apr 19 2025, after Alois P. Heinz *)
  • Python
    from sympy.utilities.iterables import partitions
    def t_row( n):
        if n == 0 : return [1]
        t = list( [0] * n)
        for p in partitions( n):
            fact = 1
            s = 0
            for k in p :
                s += p[k]
                fact *= 1 + p[k]
            if s > 0 :
                t[s - 1] += fact
        return [0] + t

Formula

T(n,n) = n + 1.
T(n,1) = 2 for n >= 1.
T(n,k) = A381895(n,k) - A381895(n,k-1) for 1 <= k <= n.
Sum_{k=0..n} (-1)^k * T(n,k) = A022597(n). - Alois P. Heinz, Mar 27 2025