2013年8月11日

(转)poj1182食物链

摘要: 这题主要是看了http://blog.csdn.net/c0de4fun/article/details/7318642这篇解题报告,所以内容基本是转的!感谢大牛这么详细的把过程写的很清楚!这道题目是经典的种类并查集,也可以说是带权值的并查集。题目大意就是三种动物构成的食物链,他们是A->B->C->A,这样一个你吃我我吃你的环形。然后说了K句话,用于建并查集的树和判断真假。注意题目说的假话的情况是和前面的一些真话冲突是假的。也就是当前如果没有冲突则可以认为是真的了!我们就用没有冲突的话建并查集,然后冲突的话就算做假话了!这一题的难点在于每个动物和别的动物是有一个关系的,连接 阅读全文

posted @ 2013-08-11 21:13 soyscut 阅读(206) 评论(0) 推荐(0) 编辑

poj2236无线网络

摘要: 这一题的大意:在救灾当中需要用网络,这堆人就用笔记本建了一个无线网,但是来,互相通信都是有距离限制的,一台电脑只能和距离他为d的电脑通信,然后一台电脑也可以通过几台电脑搭成线这样通信。然后就是输入每台电脑的坐标,然后准备好了的电脑,询问两台电脑是否可以连通,可以输出"SUCCESS",不行输出"FAIL"这一题是带有计算几何的并查集问题。还是有点小技巧的。最开始,我想的就是把修好的电脑弄成一个集合,然后计算距离就可以了(开始没注意到还可以通过n个连接来通信,还以为最长两个呢),但是发现多台电脑来通信非常难求距离。然后就发现其实可以将可以通信的电脑合并成一 阅读全文

posted @ 2013-08-11 20:36 soyscut 阅读(225) 评论(0) 推荐(0) 编辑

并查集基础

摘要: 昨天用了一天时间学了并查集,在网上找了好多资料,也看了好多人写的,还在poj上刷了几道水题,才终于搞懂了并查集的一些基础内容,所以就做一些总结。在学习过程中刷了几道题,也做一点总结。其实之前的数据结构课就讲过union-find算法,当时竟然没有察觉这就是并查集o(╯□╰)o!先上定义: 并查集是一种树型数据结构,用于处理一些不相交集合(Disjoint Sets)的合并以及查询问题。常常在使用在以森林来表示。(Wiki)(其实算法导论上就用了名为不相交集合数据结构的名字作为并查集那一部分的标题,当时看着隐隐有些蛋疼)并查集的重点主要在于2部分:1.查找元素所在森林的根节点(Find)。分布查 阅读全文

posted @ 2013-08-11 11:04 soyscut 阅读(396) 评论(0) 推荐(0) 编辑

导航