并查集
文章平均质量分 80
西风丶
这个作者很懒,什么都没留下…
展开
-
HDU1272-小希的迷宫
Problem Description 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B,那么既可以通过它从房间A走到房间B,也可以通过它从房间B走到房间A,为了提高难度,小希希望任意两个房间有且仅有一条路径可以相通(除非走了回头路)。原创 2016-03-24 21:14:57 · 321 阅读 · 0 评论 -
(并查集 or BFS+二分)HDU5652
点击打开链接 并查集: #include #define N 505 using namespace std; struct node { int x,y; }; char map[N][N]; node p[N*N]; int turnx[4]={0,0,-1,1}; int turny[4]={-1,1,0,0}; int father[N*N]; int ra原创 2016-05-16 20:47:22 · 361 阅读 · 0 评论 -
HDU 5253 最小生成树(kruskal)+ 并查集
题目链接 #include #include #include #include #define N 1000010 using namespace std; struct node { int a;//端点1 int b;//端点2 int num;//权值 }; bool cmp(node x,node y)//按权值升序 { return x.n原创 2016-07-10 16:29:50 · 268 阅读 · 0 评论 -
HDU5441 Travel 并查集
http://acm.hdu.edu.cn/showproblem.php?pid=5441 无向图,n个点,m条带权边,q次询问,给出数值d,点a可以到点b当且仅当存在一条路线其中最大的权值不超过d。 用sum记录连通块节点个数,两个连通块合并,结果增加( sum[a] + sum[b] ) * ( sum[a] + sum[b] - 1 ) - sum[a] * ( s原创 2016-07-24 23:16:04 · 279 阅读 · 0 评论 -
codeforces 722C (并查集)
题目链接:http://codeforces.com/contest/722/problem/C 题意:每次破坏一个数,求每次操作后的最大连续子串和。 思路:并查集逆向操作 #include using namespace std; typedef long long ll; const int N = 1e5 + 10; ll sum[N], ans[N]; int n, a[原创 2016-10-02 14:26:33 · 421 阅读 · 0 评论