lca
mengbi_er
一个蒟蒻JLoier
展开
-
bzoj1832: [AHOI2008]聚会
满足条件的点一定在两点lca上,枚举三个lca即可。#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int read() { char ch=getchar();int f=0; while(ch<'0'||ch>'9') ch=get原创 2017-07-04 22:17:36 · 243 阅读 · 0 评论 -
bzoj4242: 水壶
码了一上午,真是菜啊。 每个建筑都有一块占领区域,当两块区域相连,对两个建筑连长度为建筑到这个点到另一个建筑距离的边,求一遍最小生成树,之后每个询问就求倍增lca维护边权最大值就可以了。#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<queue> #include<vector>原创 2017-08-22 10:47:27 · 389 阅读 · 0 评论 -
bzoj3732: Network
求一边最小生成树就能保证两点之间边最小,然后lca搞搞就行了。#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int read() { char ch=getchar();int f=0; while(ch<'0'||ch>'9')ch=get原创 2017-09-08 08:45:10 · 229 阅读 · 0 评论