A356265 Triangle read by rows. The reduced triangle of the partition triangle of reducible permutations (A356264). T(n, k) for n >= 1 and 0 <= k < n.
0, 1, 0, 1, 2, 0, 1, 8, 2, 0, 1, 21, 25, 2, 0, 1, 49, 152, 55, 2, 0, 1, 106, 697, 670, 117, 2, 0, 1, 223, 2756, 5493, 2509, 243, 2, 0, 1, 459, 9966, 36105, 33669, 8838, 497, 2, 0, 1, 936, 34095, 206698, 342710, 184305, 29721, 1007, 2, 0
Offset: 1
Examples
Triangle T(n, k) starts: [Row sums] [1] [0] [0] [2] [1, 0] [1] [3] [1, 2, 0] [3] [4] [1, 8, 2, 0] [11] [5] [1, 21, 25, 2, 0] [49] [6] [1, 49, 152, 55, 2, 0] [259] [7] [1, 106, 697, 670, 117, 2, 0] [1593] [8] [1, 223, 2756, 5493, 2509, 243, 2, 0] [11227] [9] [1, 459, 9966, 36105, 33669, 8838, 497, 2, 0] [89537]
Links
- Peter Luschny, Permutations with Lehmer, a SageMath Jupyter Notebook.
Programs
-
SageMath
# uses function A356264_row @cache def Pn(n: int, k: int) -> int: if k == 0: return 0 if n == 0 or k == 1: return 1 return Pn(n, k - 1) + Pn(n - k, k) if k <= n else Pn(n, k - 1) def reduce_parts(fun, n: int) -> list[int]: funn: list[int] = fun(n) return [sum(funn[Pn(n, k):Pn(n, k + 1)]) for k in range(n)] def reduce_partition_triangle(fun, n: int) -> list[list[int]]: return [reduce_parts(fun, k) for k in range(1, n)] def A356265_row(n: int) -> list[int]: return reduce_partition_triangle(A356264_row, n+1)[n-1] for n in range(1, 8): print(A356265_row(n))