login
Array read by diagonals: T(h,k)=number of paths consisting of steps from (0,0) to (h,k) such that each step has length 1 directed up or right and no up-step crosses the line y=2x/3. (Thus a path crosses the line only at lattice points and on right-steps.).
17

%I #15 Mar 03 2014 03:31:49

%S 1,1,1,1,1,1,1,2,2,1,1,3,2,3,1,1,4,5,5,4,1,1,5,9,10,9,5,1,1,6,14,19,

%T 10,14,6,1,1,7,20,33,29,24,20,7,1,1,8,27,53,62,29,44,27,8,1,1,9,35,80,

%U 115,91,73,71,35,9,1,1,10,44,115,195,206,164,144,106,44,10,1

%N Array read by diagonals: T(h,k)=number of paths consisting of steps from (0,0) to (h,k) such that each step has length 1 directed up or right and no up-step crosses the line y=2x/3. (Thus a path crosses the line only at lattice points and on right-steps.).

%C T is the transpose of the array in A125778.

%H Alois P. Heinz, <a href="/A047110/b047110.txt">Antidiagonals n = 0..140, flattened</a>

%e Diagonals (beginning on row 0): {1}; {1,1}; {1,1,1}; {1,2,2,1};...

%p T:= proc(h, k) option remember;

%p `if`([h, k]=[0, 0], 1, `if`(h<0 or k<0, 0, T(h-1, k)+

%p `if`(3*k>2*h and 3*(k-1)<2*h, 0, T(h, k-1))))

%p end:

%p seq(seq(T(h,d-h), h=0..d), d=0..20); # _Alois P. Heinz_, Apr 04 2012

%t T[h_, k_] := T[h, k] = If[{h, k} == {0, 0}, 1, If[h<0 || k<0, 0, T[h-1, k]+If[3*k > 2*h && 3*(k-1) < 2*h, 0, T[h, k-1]]]]; Table[Table[T[h, d-h], {h, 0, d}], {d, 0, 20}] // Flatten (* _Jean-François Alcover_, Mar 03 2014, after _Alois P. Heinz_ *)

%Y Cf. A125778.

%K nonn,tabl

%O 0,8

%A _Clark Kimberling_. Definition revised Dec 08 2006