随笔分类 - 并查集相关
摘要:先去掉$s$和$t$做一个最小生成森林并缩点,然后把缩后的点分成三类: I. 不与$s$和$t$中任意一个点相连。若存在这类点则无解; II. 仅与$s$和$t$中的一个点相连。肯定要连上。 III. 与$s$和$t$都相连。在II型点都处理完后再处理III型点。贪心一下,每次取$s$和$t$中所剩
阅读全文
摘要:NOI 2015 Day1 T1啊… 学(nao'bu)了一下离散化,跟哈希的写法差不多咯… 大概的想法就是搞一个struct,两个域,分别储存原值和排序后的编号(也就是离散化之后的值)。然后利用这个二分查找一下即可。举个例子,原序列排序后为$ 1, 2, 5, 1000, 25000 $,然后我们...
阅读全文
摘要:题目大意:有$n$个储钱罐,每个储钱罐的钥匙都在另一个储钱罐中。求打开每一个储钱罐所需要砸开的最小数量。 $Solution$:如果储钱罐$x$的钥匙在$y$中,那么就连边$x$ $y$。于是每个点的出度都是1。然后就变成了和NOIP 2015 Day1 T2几乎一样的题——Tarjan缩点或者D...
阅读全文
摘要:题意:给出一张无向图,每次删去其中一个点,每删一次就输出当前连通块的数量。 首先要明确一点:删去一个点,同时也删去了和这个点有关联的边集。但无论如何,删点并不好搞,所以我们可以考虑倒着来,加点,用并查集维护。具体来说,每次加上一个点x,如果一个点是被第一次删去的(一个点可能被删去多次)(然而数据中并...
阅读全文

浙公网安备 33010602011771号