login
Number of nonnegative lattice paths from (0,0) to (n,0) where the allowed steps at (x,y) are (h,v) with h in {1..max(1,y)} and v in {-1,0,1}.
4

%I #26 Dec 22 2020 03:54:43

%S 1,1,2,4,9,22,57,156,447,1332,4103,12999,42176,139638,470353,1607861,

%T 5566543,19484810,68859862,245404650,881081082,3184214751,11575346316,

%U 42300703150,155316289004,572725968326,2120154235114,7876449597257,29356608044002

%N Number of nonnegative lattice paths from (0,0) to (n,0) where the allowed steps at (x,y) are (h,v) with h in {1..max(1,y)} and v in {-1,0,1}.

%H Alois P. Heinz, <a href="/A337067/b337067.txt">Table of n, a(n) for n = 0..1671</a>

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

%F a(n) ~ c * 4^n / n^(3/2), where c = 0.03828240225265266504281697555169550706277641504396262520878537702016362... - _Vaclav Kotesovec_, Oct 24 2020

%p b:= proc(x, y) option remember; `if`(x=0, 1, add(add(

%p b(x-h, y-v), h=1..min(x-y+v, max(1, y-v))), v=-1..min(y, 1)))

%p end:

%p a:= n-> b(n, 0):

%p seq(a(n), n=0..30);

%t b[x_, y_] := b[x, y] = If[x == 0, 1, Sum[Sum[

%t b[x-h, y-v], {h, 1, Min[x-y+v, Max[1, y-v]]}], {v, -1, Min[y, 1]}]];

%t a[n_] := b[n, 0];

%t a /@ Range[0, 30] (* _Jean-François Alcover_, Dec 22 2020, after _Alois P. Heinz_ *)

%Y Cf. A333069, A333105, A333647, A337318, A337863.

%K nonn

%O 0,3

%A _Alois P. Heinz_, Oct 12 2020