login
Number of Dyck paths of semilength n such that the maximal number of peaks per level equals two.
2

%I #17 May 12 2020 04:44:27

%S 1,1,7,18,59,193,616,1955,6244,19926,63490,202068,642816,2044571,

%T 6502193,20673020,65714586,208870774,663868055,2109997964,6706282384,

%U 21315049217,67748772174,215343287489,684507346839,2175916952697,6917096914771,21989855308501

%N Number of Dyck paths of semilength n such that the maximal number of peaks per level equals two.

%H Alois P. Heinz, <a href="/A288743/b288743.txt">Table of n, a(n) for n = 2..1000</a>

%H Wikipedia, <a href="https://en.wikipedia.org/wiki/Lattice_path#Counting_lattice_paths">Counting lattice paths</a>

%e . a(4) = 7: /\ /\ /\/\ /\ /\ /\

%e . /\/\/ \ /\/ \/\ /\/ \ / \/\/\ / \/ \ .

%e .

%e . /\/\

%e . /\/\ / \

%e . / \/\ / \ .

%p b:= proc(n, k, j) option remember; `if`(j=n, 1, add(

%p b(n-j, k, i)*add(binomial(i, m)*binomial(j-1, i-1-m),

%p m=max(0, i-j)..min(k, i-1)), i=1..min(j+k, n-j)))

%p end:

%p g:= proc(n, k) option remember; add(b(n, k, j), j=1..k) end:

%p a:= n-> g(n, 2)-g(n, 1):

%p seq(a(n), n=2..35);

%t b[n_, k_, j_]:=b[n, k, j]=If[j==n, 1, Sum[b[n - j, k, i] Sum[Binomial[i, m] Binomial[j - 1, i - 1 - m], {m, Max[0, i - j], Min[k, i - 1]}], {i, Min[j + k, n - j]}]]; g[n_, k_]:=Sum[b[n, k, j], {j, k}]; Table[g[n, 2] - g[n, 1], {n, 2, 35}] (* _Indranil Ghosh_, Aug 09 2017 *)

%o (Python)

%o from sympy.core.cache import cacheit

%o from sympy import binomial

%o @cacheit

%o def b(n, k, j): return 1 if j==n else sum(b(n - j, k, i)*sum(binomial(i, m)*binomial(j - 1, i - 1 - m) for m in range(max(0, i - j), min(k, i - 1) + 1)) for i in range(1, min(j + k, n - j) + 1))

%o def g(n, k): return sum(b(n, k, j) for j in range(1, k + 1))

%o def a(n): return g(n, 2) - g(n, 1)

%o print([a(n) for n in range(2, 36)]) # _Indranil Ghosh_, Aug 09 2017

%Y Column k=2 of A287822.

%Y Cf. A000108.

%K nonn

%O 2,3

%A _Alois P. Heinz_, Jun 14 2017