ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

CF997D Cycles in product

2022-02-01 10:33:05  阅读:160  来源: 互联网

标签:product le CF997D times 图上 pmatrix 长度 Cycles sum


题意

给你大小为 \(n_1, n_2\)​的两棵树 \(T_1, T_2\)​,构造一张新图,该图中每一个点的编号为 \((u,v)\)。如果在 \(T_1\) ​中, \(u_1\) ​和\(u_2\) ​之间有边,那么在该图上,对于任意 \(1\le v\le n_2\),\((u_1, v)\) 和 \((u_2, v)\) 之间有边。同样,如果在 \(T_2\) ​中,\(v_1\) ​和\(v_2\)​之间有边,那么在图上,对于任意 \(1\le u\le n_1\),\((u, v_1)\) 和 \((u, v_2)\) 之间有边.
求这个图上长度为 \(K\) 的环有多少个,环可以不为简单环,起始点或方向不同的环视为不同的环.

\(n_1, n_2\le 4000, K\le 75\),答案对 \(998244353\) 取模.

题解

\(T_1\) 上一个长度为 \(K_1\) 的环和 \(T_2\) 上一个长度为 \(K_2\) 的环以不同方式组合对应图上 \(\begin{pmatrix}K_1+K_2\\k_1\end{pmatrix}\) 个环
即答案为 \(\sum\limits_{0\le i\le K}F1_i\times F2_{K-i}\times\begin{pmatrix}K\\i\end{pmatrix}\),其中 \(F1_i\) 表示 \(T_1\) 上长度为 \(i\) 的环的个数,\(F2_i\) 表示 \(T_2\) 上长度为 \(i\) 的环的个数

我们把每个点作为起始点分别计算,考虑到树上所有的环长度均为偶数,令 \(f_{u, k}\) 表示以 \(u\) 为起始点,长度为 \(2\times k\) 的环的个数,有 \(F_{2\times k}=\sum\limits_u f_{u, k}\)
由于从父亲节点往儿子节点转移十分困难,不妨对于每个点只考虑在其子树中的环然后换根DP
考虑转移

\[f_{u,k}=\sum_{0\le t<k}f_{u,t}\sum_{v\in \text{son}_u}f_{v,k-t-1} \]

令 \(h_{u,k}=\sum_{v\in \text{son}_u}f_{v,k-t-1}\),有

\[f_{u,k}=\sum_{0\le t<k}f_{u,t}\times h_{u, k-t-1} \]

换根DP维护 \(h\),再通过 \(h\) 计算 \(f\)
\(\Theta((n_1+n_2)\times K^2)\) 足以通过此题

代码 codeforces submission 143516835

优化

复杂度瓶颈在 \(f\) 的计算,考虑优化这一过程

令 \(h'_{u,k}=h_{u,k-1}\),有

\[f_{u,k}=\sum_{0\le t<k}f_{u,t}\times h'_{u,k-t} \]

令\(G_u(x)=\sum_{1\le i\le k}h'_{u,i}\times x^i\),有

\[\begin{align*}f_{u,k}&=[x^k]\sum_{1\le i\le k}G_u(x)^i\\&=[x^k]\frac{G_u(x)^{k+1}-G_u(x)}{G_u(x)-1}\end{align*} \]

多项式快速幂和求逆可以做到 \(\Theta((n_1+n_2)K\log K)\) 的复杂度

标签:product,le,CF997D,times,图上,pmatrix,长度,Cycles,sum
来源: https://www.cnblogs.com/gzezfisher/p/cf997d.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有