摘要:
APIO2010 巡逻 k==1时直接减去直径的长度 k==2时 当两个环无重叠时直接减去第一次的直径还有第二次 有重复 可以发现重复部分会走两次 将第一次直径上的边权改为 1 然后再跑一遍直径 然后$ans=2 n l_1 l_2$ 具体咕咕咕 注意第二次找直径不能用两次bfs或者dfs 要用树形 阅读全文
摘要:
[APIO2008]紧急集合 一棵树上 找一个点 使三个人到该点的花费最少 求三个点两两之间的LCA 得出,然后我们发现 这三个LCA中有二者重合 即它存在两种情况:最后三者所走到的最优公共点只可能为这二者之一。 c++ include include include include include 阅读全文
摘要:
"luogu2756" 匈牙利 然后输出match就好了 我会说是因为我的最大流写这题写挂了我才来写匈牙利的吗 c++ include include include include using namespace std; define Min(x,y) ((x)void rd(t &x){ x= 阅读全文
摘要:
Za 19.8.27 [APIO2008]紧急集合 一棵树上 找一个点 使三个人到该点的花费最少 求三个点两两之间的LCA 得出,然后我们发现 这三个LCA中有二者重合 即它存在两种情况:最后三者所走到的最优公共点只可能为这二者之一。 c++ include include include incl 阅读全文