login
A339849
Square array T(n,k), n >= 2, k >= 2, read by antidiagonals, where T(n,k) is the number of Hamiltonian circuits within parallelograms of size n X k on the triangular lattice.
11
1, 1, 1, 1, 4, 1, 1, 13, 13, 1, 1, 44, 80, 44, 1, 1, 148, 549, 549, 148, 1, 1, 498, 3851, 7104, 3851, 498, 1, 1, 1676, 26499, 104100, 104100, 26499, 1676, 1, 1, 5640, 183521, 1475286, 3292184, 1475286, 183521, 5640, 1, 1, 18980, 1269684, 20842802, 100766213, 100766213, 20842802, 1269684, 18980, 1
OFFSET
2,5
FORMULA
T(n,k) = T(k,n).
EXAMPLE
Square array T(n,k) begins:
1, 1, 1, 1, 1, 1, ...
1, 4, 13, 44, 148, 498, ...
1, 13, 80, 549, 3851, 26499, ...
1, 44, 549, 7104, 104100, 1475286, ...
1, 148, 3851, 104100, 3292184, 100766213, ...
1, 498, 26499, 1475286, 100766213, 6523266332, ...
PROG
(Python)
# Using graphillion
from graphillion import GraphSet
def make_T_nk(n, k):
grids = []
for i in range(1, k + 1):
for j in range(1, n):
grids.append((i + (j - 1) * k, i + j * k))
if i < k:
grids.append((i + (j - 1) * k, i + j * k + 1))
for i in range(1, k * n, k):
for j in range(1, k):
grids.append((i + j - 1, i + j))
return grids
def A339849(n, k):
universe = make_T_nk(n, k)
GraphSet.set_universe(universe)
cycles = GraphSet.cycles(is_hamilton=True)
return cycles.len()
print([A339849(j + 2, i - j + 2) for i in range(11 - 1) for j in range(i + 1)])
CROSSREFS
Rows and columns 3..10 give A339850, A339851, A339852, A338970, A339622, A339960, A339961, A339962.
Main diagonal gives A339854.
Cf. A339190.
Sequence in context: A212801 A147565 A022167 * A064281 A267318 A050154
KEYWORD
nonn,tabl
AUTHOR
Seiichi Manyama, Dec 19 2020
STATUS
approved