%I #46 Dec 03 2024 20:21:12
%S 24,13824,53529984,751480602624,27917203599360000,
%T 2267561150913576960000,354252505303682314076160000,
%U 97087054992658680467800719360000,43551509948777170973522371396239360000,30293653795894300342540281328749772800000000
%N Numbers of directed Hamiltonian paths in the complete 4-partite graph K_{n,n,n,n}.
%H Zlatko Damijanic, <a href="/A377586/b377586.txt">Table of n, a(n) for n = 1..117</a>
%H L. Q. Eifler, K. B. Reid Jr., and D. P. Roselle, <a href="http://dx.doi.org/10.1007/BF01819761">Sequences with adjacent elements unequal</a>, Aequationes Mathematicae 6 (2-3), 1971; see <a href="http://eudml.org/doc/136198">also</a>.
%F a(n) = 24 * n!^4 * A190918(n).
%F a(n) = n!^4 * A322093(n,4).
%t Table[n!^4 * SeriesCoefficient[1/(1 - Sum[x[i]/(1 + x[i]), {i, 1, 4}]), Sequence @@ Table[{x[i], 0, n}, {i, 1, 4}]], {n, 1, 10}]
%o (Python)
%o from math import factorial as fact, comb
%o from itertools import combinations_with_replacement
%o def a(n):
%o # Using modified formula for counting sequences found in Eifler et al.
%o result = 0
%o fn = fact(n)
%o for i, j, k in combinations_with_replacement(range(1, n+1), 3):
%o patterns = [(3,0,0)] if i == j == k else \
%o [(2,0,1)] if i == j != k else \
%o [(1,2,0)] if i != j == k else [(1,1,1)]
%o for a, b, c in patterns:
%o s = a*i + b*j + c*k
%o num = fact(3)
%o den = fact(a) * fact(b) * fact(c)
%o if a:
%o for _ in range(a): num, den = num * comb(n-1, i-1), den * fact(i)
%o if b:
%o for _ in range(b): num, den = num * comb(n-1, j-1), den * fact(j)
%o if c:
%o for _ in range(c): num, den = num * comb(n-1, k-1), den * fact(k)
%o num *= comb(s + 1, n) * fact(s)
%o result += (1 if (3*n - s) % 2 == 0 else -1) * (num // den)
%o for _ in range(4): result *= fn
%o return result
%o print([a(n) for n in range(1,11)]) # _Zlatko Damijanic_, Nov 18 2024
%Y Cf. A190918, A234365, A322013, A322093.
%K nonn
%O 1,1
%A _Zlatko Damijanic_, Nov 02 2024