uoj498 新年的追逐战

Posted AzusaCat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了uoj498 新年的追逐战相关的知识,希望对你有一定的参考价值。

定义两个简单无向图 \\(G_1=(V_1,E_1),G_2=(V_2,E_2)\\) 的乘积为图 \\(G_1\\times G_2=(V^*,E^*)\\)。其中 \\(V^*=\\{(a,b)|a\\in V_1,b\\in V_2\\}\\)\\(E^*=\\{((a,b),(c,d))|(a,c)\\in E_1,(b,d)\\in E_2\\}\\)

现在定义 \\(H=G_1\\times G_2\\times\\dots\\times G_n\\),其中,\\(G_i\\) 是任意一个 \\(m_i\\) 个结点的简单无向图,对所有合法的 \\(G_i\\),求其对应的 \\(H\\) 的连通块数量的总和,对 \\(998244353\\) 取模。\\(n,m_i\\leqslant 10^5\\)

我们考虑如果给定两个连通图 \\(G_1,G_2\\),其乘积 \\(H=G_1\\times G_2\\) 有多少连通块。

注意到新图 \\((a,b)\\)\\((c,d)\\) 直接相连当且仅当 \\((a,c)\\in G_1\\)\\((b,d)\\in G_2\\)。所以如果 \\(G_1\\) 是一个孤立点图(\\(|V_1|=1\\)),那么 \\(H\\)\\(|V_2|\\) 个点互不连边形成的图,\\(G_2\\) 是孤立点同理。

现在考虑 \\(V_1,V_2>1\\) 的情况,我们发现结点 \\((a,b)\\) 和结点 \\((c,d)\\) 连通的充要条件是,在 \\(G_1\\) 中存在一条 \\(a\\rightarrow c\\) 的路径(可以重复经过点),在 \\(G_2\\) 中存在一条 \\(b\\rightarrow d\\) 的路径,且这两条路径的奇偶性相同。同时注意到如果某个连通图内有奇环,那么任意两点间既有长为奇数的路径也有长为偶数的路径;反之这是一张连通二分图,两个点之间任意路径的奇偶性与其黑白染色后结点的颜色有关。

于是我们考虑把点数大于 1 的连通图分为两类:有奇环的图和二分图。通过一些观察与证明可以得到:

  1. 两个有奇环的连通块相乘后形成一个有奇环的连通块。
  2. 一个有奇环的连通块和一个二分图相乘后形成一个连通二分图。
  3. 两个二分图相乘后形成两个连通二分图。

证明这几条只需要分别从连通块个数和是否有奇环入手,这里省略。

现在我们考虑计算答案,我们分为两部分:至少有一个孤立点的贡献与不含孤立点的贡献。

先考虑至少有一个孤立点的贡献,假设第 \\(i\\) 个图有 \\(a_i\\)孤立点,不难发现孤立点的贡献为 \\(\\prod m_i-\\prod a_i\\),同时注意到 \\(E(a_i)=m_i(1-(\\frac{1}{2})^{m_i-1})\\),即至少和另外一个点连边的概率乘上点数,所以这一部分的贡献就算完了(\\(a_i\\) 之间独立,直接乘)。

现在考虑至少有一个孤立点的贡献,根据上面的观察,假设现在相乘的两个图分别含有 \\(A_1,A_2\\) 个点数大于 1 的连通块,\\(B_1,B_2\\) 个点数大于 1 的子连通二分图,则它们的乘积含有 \\(A_1A_2+B_1B_2\\) 个点数大于 1 的连通块,\\(A_1B_2+A_2B_1\\) 个点数大于 1 的子连通二分图。这可以看作 \\((A_i,B_i)\\) 做异或卷积的结果,而且在期望意义下也成立。于是我们只需要算出 \\((A_i+B_i,A_i-B_i)\\) 的期望,然后做一个长为 2 的 IFWT 即可。

我们先考虑计算 \\(A_i\\) 的期望,注意到简单无向图的 EGF \\(G=\\sum 2^{\\binom{i}{2}}\\frac{z^i}{i!}\\),简单无向图由若干简单连通无向图无序组合而成,所以简单连通无向图的 EGF \\(F=\\ln G\\),任何简单无向图的连通块个数和可以钦定一个连通块计算其贡献,于是简单无向图的连通块个数和的 EGF \\(H=FG\\)。那么 \\(A_i\\) 就算好了。

现在考虑计算 \\(B_i\\) 的期望,考虑染色二分图(二分图,且每个点确定是黑色还是白色)的 EGF \\(B=\\sum\\limits_i\\sum\\limits_{j\\leqslant i}\\binom{i}{j}2^{j(i-j)}\\frac{z^i}{i!}\\),再考虑连通二分图(这里没有染色)的 EGF \\(C\\),注意到 \\(B\\) 由若干个 \\(C\\) 无序组成,且组成时还需要分配颜色,每个连通块恰好有两种分配颜色的方案,可以得到,\\(B=\\exp(2C)\\),故 \\(C=\\dfrac{\\ln B}{2}\\)。所以 \\(GC\\) 就是简单无向图子连通二分图数的 EGF。

最后的问题是怎么求 \\(B\\),注意到其可以改写成

\\[\\sum\\limits_i2^{\\binom{i}{2}}\\sum\\limits_{j\\leqslant i}\\frac{2^{-\\binom{j}{2}-\\binom{i-j}{2}}}{j!(i-j)!}z^i \\]

是一个卷积,NTT 即可。最后的总复杂度是 \\(O(n\\log n)\\)。需要注意的是我们在算 \\(F\\)\\(C\\) 的 EGF 后需要把 \\(z^1\\) 项删掉,因为我们不考虑孤立点。

提交记录

以上是关于uoj498 新年的追逐战的主要内容,如果未能解决你的问题,请参考以下文章