%I #14 Mar 27 2020 11:57:38
%S 1,1,2,1,2,4,1,2,8,6,1,2,16,14,10,1,2,32,34,38,14,1,2,64,80,162,74,20,
%T 1,2,128,190,650,426,170,26,1,2,256,450,2728,2166,1594,338,34,1,2,512,
%U 1066,11250,12014,12908,4374,724,42,1,2,1024,2526,46984,62714,119364,47738,14640,1448,52
%N Square array T(n,k), n >= 1, k >= 2, read by antidiagonals, where T(n,k) is the number of Hamiltonian paths in the n X k grid graph which start at any of the n vertices on left side of the graph and terminate at any of the n vertices on the right side.
%H Seiichi Manyama, <a href="/A333571/b333571.txt">Antidiagonals n = 1..14, flattened</a>
%e Square array T(n,k) begins:
%e 1, 1, 1, 1, 1, 1, 1, ...
%e 2, 2, 2, 2, 2, 2, 2, ...
%e 4, 8, 16, 32, 64, 128, 256, ...
%e 6, 14, 34, 80, 190, 450, 1066, ...
%e 10, 38, 162, 650, 2728, 11250, 46984, ...
%e 14, 74, 426, 2166, 12014, 62714, 340510, ...
%o (Python)
%o # Using graphillion
%o from graphillion import GraphSet
%o import graphillion.tutorial as tl
%o def A(start, goal, n, k):
%o universe = tl.grid(n - 1, k - 1)
%o GraphSet.set_universe(universe)
%o paths = GraphSet.paths(start, goal, is_hamilton=True)
%o return paths.len()
%o def A333571(n, k):
%o if n == 1: return 1
%o s = 0
%o for i in range(1, n + 1):
%o for j in range(k * n - n + 1, k * n + 1):
%o s += A(i, j, k, n)
%o return s
%o print([A333571(j + 1, i - j + 2) for i in range(11) for j in range(i + 1)])
%Y Columns k=2-3 give: A333574, A333575.
%Y Rows n=1-3 give: A000012, 2*A000012, A000079.
%Y T(n,n) gives A121789(n-1).
%Y Cf. A333509.
%K nonn,tabl
%O 1,3
%A _Seiichi Manyama_, Mar 27 2020