排序:
默认
按更新时间
按访问量

UVA 12232 Exclusive-OR (带权值的并查集)

I don‘t know直接复制网站上的话一直WA,直接复制’是错的。#include #include #include #include #include using namespace std; const int maxn=40000+5; int pa[maxn],w[maxn]; in...

2016-11-04 21:54:54

阅读数:90

评论数:0

UVA 11987 Almost Union-Find(有删除操作的并查集)

因为有删除操作,那么可能删除的是根节点,所以定一个虚拟节点,结合中的元素全部接到虚拟节点下。#include #include #include #include using namespace std; typedef long long LL; const int maxn=200000+10...

2016-11-02 17:40:41

阅读数:84

评论数:0

UVA 1329 Corporative Network(并查集)

#include #include #include #include using namespace std; #define rep(i,a,b) for(int i=(a);i<=(b);i++) #define ss(x) scanf("%d",&x) c...

2016-10-20 21:17:07

阅读数:78

评论数:0

UVA 1160 X-Plosives(并查集)

可以把一个化合物看成一条边,那么两端点就是化合物的两个元素,如果k个化合物,k个元素,那么代表这k条边练成了一个环,所以用并查集来判断就可以了。 #include #include #include #include using namespace std; #define rep(i,a,b)...

2016-10-20 19:46:38

阅读数:75

评论数:0

POJ 2236 Wireless Network

这题如果命令是O的话,那么就会有一个结点被激活,那么就要查看这个结点能不能跟在距离范围内的结点相连了,那就要用一个for循环来遍历与它相邻的点,如果相邻点的距离小于d的话,那就说明可以连接,连接的判断条件为if(fix[i]&&G[u][i]// // main.cpp // ...

2016-07-24 14:55:04

阅读数:85

评论数:0

POJ 1703 Find themCatch them

这类题有一点类似,那就是需要定义状态,且题目越复杂,状态越多,如果状态多,定义状态的时候要与题目给出的关系有一定联系。// // main.cpp // Richard // // Created by 邵金杰 on 16/7/24. // Copyright © 2016年 邵金杰. A...

2016-07-24 11:40:19

阅读数:113

评论数:0

POJ 2560 Freckles

数据太水了,所以用暴力求的距离。 // // main.cpp // Richard // // Created by 邵金杰 on 16/7/23. // Copyright © 2016年 邵金杰. All rights reserved. // #include #include...

2016-07-24 11:18:15

阅读数:112

评论数:0

POJ 1861 Network

// // main.cpp // Richard // // Created by 邵金杰 on 16/7/23. // Copyright © 2016年 邵金杰. All rights reserved. // #include #include #include using n...

2016-07-24 10:22:16

阅读数:85

评论数:0

POJ 2492 A Bug's Life

这题和1182食物链类似,不过是简化版。 设定两个状态0表示同性,1表示异性都是相对父结点而言的。那么孙子和爷爷结点的关系为(re[a]+re[pa[a]])%2; 那么两个集合相并时,根结点a和b的关系为(1+re[y]+re[x])%2; 判断是否同性时的条件时if(a==b&&...

2016-07-24 00:10:39

阅读数:71

评论数:0

POJ 2524 Ubiquitous Religions

// // main.cpp // Richard // // Created by 邵金杰 on 16/7/23. // Copyright © 2016年 邵金杰. All rights reserved. // #include #include using namespace ...

2016-07-23 19:31:19

阅读数:72

评论数:0

POJ 1182 食物链

这题用并查集来写,且树的层数不超过2,3层最多只持续一个循环就会变成2层,因为只有三种动物,两两之间的关系只需要2层树就可以表示清楚了,那么现在当树有三层时怎么变成2层树呢? 先假设0,1,2分别为该结点与父结点表示的关系,0表示同类,1表示该结点被父结点吃,2表示该结点吃父结点。 这个表示方法是...

2016-07-23 18:57:46

阅读数:92

评论数:0

POJ 1988 Cube Stacking

初始时每个堆就一个方块,如果碰到指令M,那么就是把x的堆放到y的堆上,那么我们把不动的堆,也就是y当作根,把x解到y上,那么x堆的根结点的under[rootx]改成 y堆的sum[rooty],因为x堆下面最起码有sum[rooty]的方块,y的每个方块的under是不用更新的,因为它没有变,...

2016-07-23 15:12:04

阅读数:118

评论数:0

POJ 1611 The Suspects

#include #include #include #include using namespace std; const int maxn=30000+100; int pa[maxn],f[maxn]; int getroot(int a) { return pa[a]==a?a:p...

2016-07-23 13:37:20

阅读数:100

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭