
并查集
PinappleMi
这个作者很懒,什么都没留下…
展开
-
D. Lizards and Basements 2(DFS+最优性剪枝)
D. Lizards and Basements 2(DFS+最优性剪枝)题目链接题目大意:你是火系法师,对面有一排敌人,每个敌人都有HP,你要向他们扔火球,火球对目标 i 有一个主伤害a,对i+1和i -1有一个溅射伤害b。法师只能攻击到2号到n-1号。问你至少要扔多少个火球才能杀死所有敌人,并依次输出每个火球的攻击目标。题解:数据较少,直接DFS爆搜+最优性剪枝。从第二个开始搜索,...原创 2018-03-19 23:57:12 · 333 阅读 · 0 评论 -
CF C. Socks 并查集+贪心思想
题目链接:SOCK题意:看了许多遍才看懂意思,(理解力贼差)。就是说,给你n只袜子,从1-n编号,给出每只袜子的颜色,接下来m行,每行给出一个l和r,代表这天要穿的袜子编号。求为了保证每天穿的两只袜子颜色相同,至少对几只袜子染色。思路:首先我们可以对这m对关系用并查集进行维护,把需要颜色相同的袜子放到一个集合里面去,然后使用vector存入该集合中每只袜子的颜色。然后我们要染最少的袜子,所...原创 2018-04-01 10:43:30 · 349 阅读 · 0 评论 -
codeforces D.Dima and Bacteria (floyd+并查集)
题目链接:Dima and Bacteria题意:给出n个点,m条边,每条边是双向的,并且有权值。n个点分为k个种类,每个种类有Ci个点 如果任意两个相同点之间转移,可以找到一条路径,该路径满足经过的边的权值和为0则输出Yes,输出任意两个种类的点之间转移的最小路径。否则输出No;思路:分为两个问题 1.先用并查集判断是否相同种类任意两点是连通的。 对权值为0的...原创 2018-05-12 12:29:40 · 305 阅读 · 1 评论 -
codeforces E. New Reform (并查集)
题目链接:E. New Reform大意:n个城市,m条双向路,将这些路改成单向的,如果一个城市没有通向它的路,(入度为0)就说明该城市是单独的。问修改后最少有几个单独的城市,要使结果最小。思路: 1.可以建成一个有向图,可能有k个联通块,如果一个联通块没有环,就说明这个联通块,至少有一个城市单独的,因此就化成找联通块和环的问题 2.联通块的话可以用并查集来维护,然后...原创 2018-06-17 16:52:13 · 298 阅读 · 0 评论