摘要: http://poj.org/problem?id=2236 给定N个坏掉的无线发射器坐标,给定其能相连通的最大距离,O i 代表修好第i个发射器,S i j 表示判断第i个和第j个是否能接通(可间接相连)。 简单并查集应用,一个bool数组标记是否可用,每修好一个,找N个中已修好且可以直接相连的合并。最后判断i,j 是否都已修好且在同一个集合中即可。 脑残的错,把make_set()放到n的输入之前了,找了N久N久。泪流满面啊...code:#include<cstdio>intnode[1005][2];intp[1005];boolflag[1005];intn,d;void 阅读全文
posted @ 2012-01-31 02:22 追逐. 阅读(217) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=1308 题意:给出一些节点的连接情况,问所给出的节点是不是可以构成一棵树。 树的定义已经给出: 1. 只有一个根节点 2. 根节点到每个节点只有唯一路径 3. 题目第一句特别提到空树也是一颗合法树 对于第一条,明显的森林不是树,并查集将每对输入合并,最后看是否在同一个集合中。 第二条,保证唯一路径与题目中给出的第二条定义相似,对于每个节点,只有一条边指向它。如果节点已经存在于集合中,则肯定已经有一边指向它,或者它是作为根节点。也就是说,输入的两个元素不能在同一个集合中。可恶的是这题居然没给数据量!开始以200为上限做的,最后用majia试了 阅读全文
posted @ 2012-01-31 00:34 追逐. 阅读(224) 评论(0) 推荐(0) 编辑