并查集
Baiyi_destroyer
萌新求关注^_^
展开
-
小希的迷宫(并查集 hdu1272)
Description 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B,那么既可以通过它从房间A走到房间B,也可以通过它从房间B走到房间A,为了提高难度,小希希望任意两个房间有且仅有一条路径可以相通(除非走了回头路)。小希现在把她的设...原创 2018-09-18 20:09:53 · 209 阅读 · 0 评论 -
食物链
Description 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链关系进行描述: 第一种说法是"1 X Y",表示X和Y是同类。 第二种说法是"2 X Y",表示X吃Y。 此人对N个动物,用上述两种说...转载 2018-09-22 22:47:54 · 357 阅读 · 0 评论 -
并查集详解
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?) 来看一个实例,杭电1232畅通工程 首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它...转载 2018-05-18 20:47:41 · 118 阅读 · 0 评论 -
并查集
并查集的模板 最简单的那种 并查集初始化 #include<stdio.h> int father[1005]; void init(int m){ int i; for(i=1;i<=m;i++) father[i]=i; } 并查集找根(不改find father 不进行压缩) int find(int x){ while(x!=father(x)) x=fa...转载 2018-04-25 21:53:38 · 190 阅读 · 0 评论