|
|
A091441
|
|
Table (by antidiagonals) of permutations of two types of objects such that each cycle contains at least one object of each type. Each type of object is labeled from its own label set.
|
|
2
|
|
|
1, 2, 2, 6, 8, 6, 24, 36, 36, 24, 120, 192, 216, 192, 120, 720, 1200, 1440, 1440, 1200, 720, 5040, 8640, 10800, 11520, 10800, 8640, 5040, 40320, 70560, 90720, 100800, 100800, 90720, 70560, 40320, 362880, 645120, 846720, 967680, 1008000, 967680
(list;
table;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
REFERENCES
|
F. Bergeron, G. Labelle and P. Leroux, Combinatorial Species and Tree-Like Structures, Cambridge, 1998, p. 114 (2.4.42).
|
|
LINKS
|
|
|
FORMULA
|
Double e.g.f.: A(x, y) = Sum_{i, j>=0} (x^i*y^j/(i!*j!)) = (1-x)*(1-y)/(1-x-y).
T(n,k) = k * T(n-1,k-1) + (n-k+1) * T(n-1,k), T(1,1) = 1. - Reinhard Zumkeller, May 07 2013
|
|
EXAMPLE
|
1, 2, 6, 24, 120; ...
2, 8, 36, 192, 1200; ...
6, 36, 216, 1440, 10800; ...
24, 192, 1440, 11520, 100800; ...
120, 1200, 10800, 100800, 1008000; ...
|
|
PROG
|
(Haskell)
import Data.List (genericLength)
a091441 n k = a091441_tabl !! (n-1) !! (k-1)
a091441_row n = a091441_tabl !! (n-1)
a091441_tabl = iterate f [1] where
f xs = zipWith (+)
(zipWith (*) ([0] ++ xs) ks) (zipWith (*) (xs ++ [0]) (reverse ks))
where ks = [1 .. 1 + genericLength xs]
|
|
CROSSREFS
|
|
|
KEYWORD
|
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|