- 博客(8)
- 收藏
- 关注
原创 A Bug's Life 并查集
题意:给你机组测试数据,每一组前面有一行,有几个虫子, 虫子交配次数。接下来是每一行交配。给虫子做标记比如奇数为公偶数就为母。判断如果两种虫子性别相同,且有性行为就是同性恋。 核心思想:两个虫子到根结点步数奇偶性不同,相同就是同性,这里设置1为同性恋,0否; Description Background Professor Hopper is researching t
2015-09-27 14:44:09 316
原创 Parity game 并查集
题目大意: 给你一个区间,然后给你答案 里面有奇数个1还是偶数个1.这些是一行一行的 一句话。让你判断一下到第几句话是错误的 我们可以想【a,b】 如果里面有偶数个1 就是1到a-1 和 1到b 里面的得数同为偶或者同为奇数 如果【a,b]里面有奇数个1 那么 1到a-1有奇数个1 和 1到b有偶数个1 ,或者相反。部分解释见题解 搞了好几天 看了好多代码 终于领悟一点。。。。
2015-09-21 23:20:45 330
原创 Supermarket 并查集
题目意思是 输入N组数 每组数前面一个是价值 后面一个是它的保质期 所以问在保质期之内最多卖多少钱 并查集 真心难想 都当成贪心了 哎 这个题 主要是把输进来的一对 按照价值由大到小排序 然后找到保质期的根 找到 sum后加上它的价值 然后把这个根减去一 所以再找下一个 Description A supermarket has a set Prod of produc
2015-09-16 22:44:48 303
原创 食物链 并查集
食物链题第一题,看的别人代码之后敲得 里面的关系挺难的,推荐去看一下大牛的详解 ,一个是路径压缩,孙子和爷爷的关系为孙子到父亲加上父亲到爷爷然后对三取余,自己可以列举找规律。0 代表相同物种 1 代表夫吃子 2子吃父 和原题查一 ,所以传参要考虑好 。如果两物种根相等,那么两根操作 关系不变。如果不相等两根合并,合并后更新新根的值,这里尤为重要 如果把x连到y上 那么 就为 x根->x ,x->
2015-09-15 22:02:36 362
原创 How Many Answers Are Wrong 并查集
题意为前两个数之间的和为第三个数,这个题我们可以这么考虑,比如a 到 b之间和为 s,那么 s = (开始到b之间的和) - (开始到a-1之间的和),ab的根相等 那么它们在一个集合里 那么s即为它们之间和 如果ab的根不相等,那么把b链接到a的根上 那么 更新 b的权值 它到a根的就为 (a到b的距离) + ( a到根的距离) - (b到原来的根)。可以自己画图分析一下 T
2015-09-14 22:43:32 315
原创 How Many Tables 并查集
这个并查集题是认识的人可以坐在一个桌子上,比如a认识b,b认识c,那么a,b,c可以在一个桌子上 这个题可以这么想把在一个桌子上的人全在一起 那么合并到这个人的那个人的根节点会改变 比如 a合并到b上,那么a的根节点就连到b的根节点上 a的根节点值就改变了 后面只需要检测根节点和初始赋值是否相同 找到不相同的 用总的桌子书减去就是我们要的结果 Description Today
2015-09-13 22:20:21 216
原创 Wireless Network 并查集
这是我第一个并查集问题 ,求得是电脑跟电脑之间如果距离小于 d 那么可以连接 ,电脑之间都是有编号顺序的 然后问你例如1 和 4 之间可以链接吗?它们之间的电脑连通了 就是sucess 所以我们把它运用并查集 联通的就放到一个圈子里 最后查找要求的两台电脑编号在一个圈子里是否就可以了 初次体验并查集 必须有找父亲节点的函数 还有合并两个数的函数 这是并查集基本的 其余的在主函数里自己构
2015-09-12 21:11:27 346
原创 The Suspects 并查集
传染病 一开始只是0可能有 然后他的圈子里的人可能都被感染,感染的人可能又在别的圈子里所以是典型的并查集 在一个圈子里的都放到一个集合里 然后最后找到包含0的圈子就是所有的感染者 Description 严重急性呼吸系统综合症( SARS), 一种原因不明的非典型性肺炎,从2003年3月中旬开始被认为是全球威胁。为了减少传播给别人的机会, 最好的策略是隔离可能的患者。
2015-09-12 21:03:02 459
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人