[CTS2019] 随机立方体
有一个 \(n \times m \times k\) 的立方体。现在将 \(1\) 到 \(n \times m \times k\) 中的数随机填入立方体的所有格子,恰好形成一个排列。
定义一个数是极大的数,当且仅当在与其至少有一个坐标相同的数中,这个数最大的。求恰好有 \(k\) 个极大的数的概率,对 \(998244353\) 取模。
\(T \leq 10\) 组数据,\(1 \leq n,m,l \leq 5000000\),\(1 \leq k \leq 100\)。
概率转方案数,设 \(f_i\) 为恰好有 \(i\) 个极大的数的方案数,则答案为 \(\dfrac{f_k}{(n \times m \times l)!}\)。
考虑容斥,设 \(g_i\) 为至少有 \(i\) 个极大的数的方案数。由于至少有 \(i\) 个极大的数的方案数会对至少有 \(j\) 个极大的数的方案数贡献 \(\dbinom{j}{i}\) 次,我们不难写出 \(f_i=\sum\limits_{j} (-1)^{j-i}\dbinom{j}{i} g_i\)。
考虑如何计算 \(g\)。我们不妨钦定极大的数的位置。容易发现,极大的数在每一维上的坐标必然互不相同。为了方便,不妨从小到大钦定极大的数。
我们定义 \(h_i\) 表示选出 \(i\) 个极大的数并钦定相互顺序的方案数,\(p_i\) 表示钦定顺序后的填法总数,发现 \(h_i=n^{\underline{i}} \times m^{\underline{i}} \times l^{\underline{i}}\)。我们不妨钦定从小到大第 \(x\) 个极大的数在 \((x,x,x)\)。不妨令 \(q(x)=n \times m \times l - (n-x) \times (m-x) \times (l-x)\),由经典结论可知 \(p_i=\dfrac{(n \times m \times l)!}{\sum\limits_{j=1}^{i} q(j)}\)。又 \(g_i = h_i \times p_i\),我们可以递推求出 \(g_i\)。此时我们需要求出 \((n \times m \times l)!\),发现原题需要求的是概率,我们直接忽略此项即可。
那个结论是什么?
一棵 \(n\) 个节点的树,称一个 \(1\) 到 \(n\) 的排列 \(p\) 是好的,当且仅当 \(\forall u=fa_v,p_v < p_u\)。满足要求的排列 \(p\) 个数为 \(\dfrac{n!}{\sum\limits_{i=1}^{n} size_i}\)。

浙公网安备 33010602011771号