摘要:
二分图的最小权点覆盖问题可以使用最小割模型求解 在求具体方案的时候,首先找到割集,也就是从源点搜出去,之后判断两边访问情况求点覆盖 #include<bits/stdc++.h> using namespace std; const int N=1e5+10; const int inf=1e8; 阅读全文
摘要:
这题如果直接做,显然是是对每个信仰维护一棵线段树,但是这样铁定炸内存,因此考虑使用动态开点线段树 这样的答案就和询问的个数相关。之后就是普通的树链剖分维护 #include<bits/stdc++.h> using namespace std; typedef long long ll; typed 阅读全文
摘要:
观察数据范围是跟k有关的,因此我们考虑建立虚树,对于维护三个值 总和就是常规的按每条路左右两边点数算贡献,注意是特殊点的数量 之后我们维护mi[i],mx[i]表示对于当前点,子树中离他最近的特殊点在哪 #include<bits/stdc++.h> using namespace std; typ 阅读全文