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.
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
Examples
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, ...
Links
- Seiichi Manyama, Antidiagonals n = 2..13, flattened
- M. Peto, Studies of protein designability using reduced models, Thesis, 2007.
Crossrefs
Programs
-
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)])
Formula
T(n,k) = T(k,n).