2024.9.23 test

十三联测 #6

D

一张图,每个点选或不选,问所有情况下,两端点都被选的边的数量的 \(k\) 次方的和。
\(n,m\le 10^5,k\le 3\)

考虑 \(k=3\) 的情况,考虑其组合意义,对于所有选点情况,选出 \(3\) 条可重复的边的方案数。
这样就可以拆贡献了,考虑这三条边是什么的情况。
a. 三条边重复; b. 两条边重复,另一条共一个端点; c. 两条边重复,另一条分离;
d. 没有重复,三条边分离; e. 没有重复,有两条边共端点; f. 菊花; g. 三元环; h. 链
需要简单的容斥。
关于三元环计数除了 bitset 加根号的做法,还有不需要 bitset 的。
考虑按照度数从大到小排序后,将边从度数大的定向到度数小的。
然后我们枚举 \(x\to y,y\to z\),检验 \(x\to z\) 是否存在边。分讨 \(y\) 出度的大小。
\(y\) 出度 \(\ge \sqrt m\),那么 \(y\) 只会被枚举不超过 \(\sqrt m\) 次,因为没有那么多的 \(x\),复杂度 \(O(m\sqrt m)\)
\(y\) 出度 \(\le \sqrt m\)\(y\) 最多被枚举 \(m\) 次,复杂度 \(O(m\sqrt m)\)

posted @ 2024-09-23 10:35  s1monG  阅读(22)  评论(0)    收藏  举报