随笔分类 -  数据结构--并查集

摘要:题目链接:https://ac.nowcoder.com/acm/contest/889/E 题意:n个人,m次操作,每次合并两个人,求合并后找出4个人,且两两不在一个集合的方案数。 思路:最开始有C[n][4]种方案,每次合并我们计算出减少了多少方案数即可。减少的为本次合并的两个集合的大小的乘积, 阅读全文
posted @ 2019-08-16 10:43 Frank__Chen 阅读(212) 评论(0) 推荐(0)
摘要:题目链接:https://nanti.jisuanke.com/t/39271 题意:给定n个物品,m组限制,每个物品有个伤害值,现在让两个人取完所有物品,要使得两个人取得物品伤害值之和最接近,输出伤害值不小于另一个的人的伤害值,每组限制包括两次数x y,表示物品x和物品y不能由同一个人取得。 思路 阅读全文
posted @ 2019-05-26 20:10 Frank__Chen 阅读(157) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem;jsessionid=436A34AE4BE856FB2DF9B264DCA9AA4E?id=1308 题意:给定一些边让你判断是否构成数。 思路:这道题细节很多,wa了好久。利用并查集将一棵树的节点并在一块,如果当前的边的两个端点祖先相同,则 阅读全文
posted @ 2019-04-07 21:23 Frank__Chen 阅读(154) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=2912 题意:给n个人,m组关系,玩石头剪刀布的游戏,n个人中除一个人judge以外,其他人属于3个group(即石头、剪刀、布),他们只能出这一个手势,而judge可以随便出,要求能否找到judge和在第几组关系时能最先找到judge 阅读全文
posted @ 2019-04-05 17:57 Frank__Chen 阅读(264) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=2492 题意:给出n个人,m条关系,每条关系表示的两个人异性,判断这m条关系是否有误。 思路:带权并查集,类似poj1182,并查集的向量应用。用1表示x,y异性,0表示同性,不访用f(x,y)表示x,y的关系。容易得出f(x,z)=f 阅读全文
posted @ 2019-04-04 13:36 Frank__Chen 阅读(116) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=1984 题意:给定n个farm,m条边连接farm,k组询问,询问根据前t3条边求t1到t2的曼哈顿距离,若不可求则输出-1。 思路:类似与poj1182,也是并查集的向量运用。用root[i]表示farm i的祖先,x[i],y[i] 阅读全文
posted @ 2019-04-04 09:58 Frank__Chen 阅读(130) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=1733 题意:给定由0、1组成的数串长度n,询问次数m,每次询问给出a,b,s,表示区间[a,b]内1的数量为s(odd-奇数或even-偶数),求前几次询问的答案是正确的。 思路:此题类似与poj1182,属于并查集的向量应用。首先n 阅读全文
posted @ 2019-04-02 21:10 Frank__Chen 阅读(229) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=1456 题意:给n件商品的价格和卖出截至时间,每一个单位时间最多只能卖出一件商品,求能获得的最大利润。 思路:首先是贪心,为获得最大利润,优先考虑价格最高的,所以要按价格降序排列,另外每一件商品售出的时间应越后越好,比如a[i].p,a 阅读全文
posted @ 2019-04-02 18:08 Frank__Chen 阅读(284) 评论(0) 推荐(0)
摘要:题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805053141925888 题意:给定n个人,以及每个人的兴趣,把有相同兴趣的人并成一个社交集群,问有多少个群,并以非递增方式输出所有群的人数。 思路:如果合并人 阅读全文
posted @ 2019-03-27 20:21 Frank__Chen 阅读(313) 评论(0) 推荐(0)
摘要:题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805066135879680 题意:给宴席排座位,有n个人,m个关系,k组询问,1表示为朋友,-1表示为敌人。询问时,两人为朋友而非敌人输出No problem,两 阅读全文
posted @ 2019-03-16 20:30 Frank__Chen 阅读(264) 评论(0) 推荐(0)
摘要:题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805068539215872 题意:给定n个人的信息,包括其编号,父母以及孩子的编号,以及其名下的房产数量和房产面积,要求有多少个家族,并列出每个家族的最小编号,家 阅读全文
posted @ 2019-03-16 17:40 Frank__Chen 阅读(826) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem;jsessionid=8C1721AF1C7E94E125535692CDB6216C?id=1417 题意:有p1个天使,p2个恶魔,天使只说真话,恶魔只说假话。问n句话,问x:y是否为天使,x回答yes或no,分别表示是或否,问能否确认为天 阅读全文
posted @ 2019-03-03 19:01 Frank__Chen 阅读(438) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=1182 题意:题目告诉有 3 种动物,互相吃与被吃,现在告诉你 m 句话,其中有真有假,叫你判断假的个数 ( 如果前面没有与当前话冲突的,即认为其为真话 )。每句话开始都有三个数 D A B,当D = 1时,表示A 和B是同类,当D = 阅读全文
posted @ 2019-03-01 22:01 Frank__Chen 阅读(185) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3038 题意:对于给定的a1..an,通过询问下标x..y,给出a[x]+...+a[y],但给出的值可能是错的,需要判断,因为题目说的是整数,也可能是负整数,所以逻辑错误只有一种情况:给了a..c的值x 阅读全文
posted @ 2019-03-01 09:55 Frank__Chen 阅读(180) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=1611 思路: 显然是一个并查集的题,很简单,只要将一个group中的学生并在一起,最后遍历1到n-1,看有多少学生的祖先与0的祖先相等即可。 代码如下: 阅读全文
posted @ 2019-02-28 17:50 Frank__Chen 阅读(135) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=2236 思路: 看到时间给到了10000MS,就可以直接套并查集板子了,不用特殊技巧。用结构体表示computer,元素x,y,s分别表示横纵坐标和状态(0表示未修好,1表示修好),root数组表示祖先数组,记住要初始化。还有输入字符时 阅读全文
posted @ 2019-02-28 17:05 Frank__Chen 阅读(142) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/contest/1131/problem/F 思路: 很容易看出这是一道并查集的题目,因为要输出每个cage中住的鸟的编号,故采用静态链表。用l[i]表示一条链的最左端编号,r[i]表示一条链最右端编号,nex[i]表示编号i后面的鸟的编号,ro 阅读全文
posted @ 2019-02-23 23:53 Frank__Chen 阅读(194) 评论(0) 推荐(0)
摘要:题目链接:https://www.luogu.org/problemnew/show/P1196 思路: 带权并查集。对每个结点,构造表示该结点的头结点,该结点距头结点的距离,该列的大小3个数组。 在合并过程中,要维护每个结点的权值,将x所在列的头结点接到y所在列的尾部,并修改xx距新头结点的距离, 阅读全文
posted @ 2019-02-03 20:47 Frank__Chen 阅读(211) 评论(0) 推荐(0)
摘要:题目链接:https://www.luogu.org/problemnew/show/P3367 思路: 今天学了新算法——并查集,本题是简单的并查集题的模板。 核心思想是“递归+压缩路径”。 并查集,在一些有N个元素的集合应用问题中,我们通常是在开始时让每个元素构成一个单元素的集合,然后按一定顺序 阅读全文
posted @ 2019-02-03 14:55 Frank__Chen 阅读(147) 评论(0) 推荐(0)