|
|
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
(list;
table;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
2,5
|
|
LINKS
|
|
|
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
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
|
|
|
KEYWORD
|
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|