login
Triangular array T read by rows: T(n,0)=T(n,n)=1 for n >= 0; for n >= 2 and 1 <= k <= n-1, T(n,k) = T(n-1,k-1) + T(n-2,k-1) + T(n-1,k) if n is even and 1 <= k <= n/2, else T(n,k) = T(n-1,k-1) + T(n-1,k).
30

%I #23 Sep 22 2025 16:00:28

%S 1,1,1,1,3,1,1,4,4,1,1,6,11,5,1,1,7,17,16,6,1,1,9,30,44,22,7,1,1,10,

%T 39,74,66,29,8,1,1,12,58,143,184,95,37,9,1,1,13,70,201,327,279,132,46,

%U 10,1,1,15,95,329,671,790,411,178,56,11,1,1,16,110,424,1000,1461,1201,589,234,67,12,1

%N Triangular array T read by rows: T(n,0)=T(n,n)=1 for n >= 0; for n >= 2 and 1 <= k <= n-1, T(n,k) = T(n-1,k-1) + T(n-2,k-1) + T(n-1,k) if n is even and 1 <= k <= n/2, else T(n,k) = T(n-1,k-1) + T(n-1,k).

%H G. C. Greubel, <a href="/A026747/b026747.txt">Rows n = 0..100 of triangle, flattened</a>

%F T(n, k) = number of paths from (0, 0) to (n-k, k) in the directed graph having vertices (i, j) and edges (i, j)-to-(i+1, j) and (i, j)-to-(i, j+1) for i, j >= 0 and edges (i, 2h+i)-to-(i+1, 2h+i+1) for i >= 0, h>=0.

%e Triangle begins as:

%e 1;

%e 1, 1;

%e 1, 3, 1;

%e 1, 4, 4, 1;

%e 1, 6, 11, 5, 1;

%e 1, 7, 17, 16, 6, 1;

%e 1, 9, 30, 44, 22, 7, 1;

%p A026747 := proc(n,k)

%p if k=0 or k = n then

%p 1;

%p elif type(n,'even') and k <= n/2 then

%p procname(n-1,k-1)+procname(n-2,k-1)+procname(n-1,k) ;

%p else

%p procname(n-1,k-1)+procname(n-1,k) ;

%p end if ;

%p end proc: # _R. J. Mathar_, Jun 30 2013

%t T[n_, k_]:= T[n, k]= If[k==0 || k==n, 1, If[EvenQ[n] && 1<=k<=n/2, T[n-1, k-1] +T[n-2, k-1] +T[n-1, k], T[n-1, k-1] +T[n-1, k] ]]; Table[T[n, k], {n,0,12}, {k,0,n}]//Flatten (* _G. C. Greubel_, Oct 28 2019 *)

%o (PARI) T(n,k) = if(k==0 || k==n, 1, if(n%2==0 && k<=n/2, T(n-1,k-1) + T(n-2,k-1) + T(n-1,k), T(n-1,k-1) + T(n-1,k) ));

%o for(n=0,12, for(k=0,n, print1(T(n,k), ", "))) \\ _G. C. Greubel_, Oct 28 2019

%o (SageMath)

%o def T(n, k):

%o if (k==0 or k==n): return 1

%o elif (mod(n,2)==0 and k<=n/2): return T(n-1,k-1) + T(n-2,k-1) + T(n-1,k)

%o else: return T(n-1,k-1) + T(n-1,k)

%o [[T(n, k) for k in (0..n)] for n in (0..12)] # _G. C. Greubel_, Oct 28 2019

%o (GAP)

%o T:= function(n,k)

%o if k=0 or k=n then return 1;

%o elif (n mod 2)=0 and k<Int(n/2)+1 then return T(n-1,k-1)+T(n-2,k-1) +T(n-1,k);

%o else return T(n-1,k-1) + T(n-1,k);

%o fi;

%o end;

%o Flat(List([0..12], n-> List([0..n], k-> T(n,k) ))); # _G. C. Greubel_, Oct 28 2019

%Y Cf. A026754 (row sums).

%K nonn,tabl

%O 0,5

%A _Clark Kimberling_

%E More terms added by _G. C. Greubel_, Oct 28 2019