
tarjan
Rem_Inory
这个作者很懒,什么都没留下…
展开
-
【题解】P2921 在农场万圣节(tarjan)
这个题可以用tarjan解决,将染色后的点标记为tarjan的那个点,特判如果出发点等于目标点 答案就是1,如果要求的那个点在强连通分量里面,我们就输出其所含的cnt(也就是强连通分量所代表的环的大小)。如果目标点不在强连通分量里,我们就从该点进行扩展,记录下扩展的步数step。如果扩展到一个强连通分量内,答案就是step+该强连通分量的环的大小,break掉即可。最后输出每一个点的答案。#...原创 2018-07-18 22:08:34 · 257 阅读 · 0 评论 -
【题解】codevs P2822 爱在心中(tarjan缩点)
该题思路类似洛谷P2341 受欢迎的牛,大部分内容可以参照上一篇题解,这里不再重复。但注意我们记录出度为0的点时还要判断它是一个点还是一个缩过的点,因为只有爱心天使(缩过的强连通分量)才能被别人爱慕。记录下有多少个爱心天使(cnt[i]!=1),并按照题意操作即可。最后输出强连通分量里的点时注意枚举1-n所有点,判断它染色后是不是出度为0的那个点,如果是就输出即可。 #include&l...原创 2018-07-18 21:57:03 · 191 阅读 · 0 评论 -
【题解】P2341 受欢迎的牛(tarjan缩点)
这个题运用到了缩点技巧,tarjan里我们记录下缩后的点的序号,对于每一个强连通分量来说,当栈顶元素不等于根节点时,我们将其出栈,记录下那个点的染色数组=新序号,并将新序号所包含的节点个数++(也就是记录这个强连通分量里有多少个结点);由于强连通分量里的每个数都可以互相到达,那他们所代表的牛都是互相爱慕的,可以缩点。对于每一个染色后的结点,我们求他不包含缩点后的强连通分量的出度,并记录这个出度为0...原创 2018-07-18 21:48:40 · 215 阅读 · 0 评论 -
【题解】P2661 信息传递(tarjan)
这道题用来解决的方法很多,最近学了tarjan,所以我们不妨用tarjan来解决。我们将这个关系用有向图的方式存下来,那么答案就是这个图里最小的环的大小。对于tarjan数组,我们记录dfn代表时间戳,low代表其强连通分量中的根的时间戳(大概吧)。初始化dfn=low=++index,然后把这个点存进栈内,把代表访问过的b数组和在栈内的instack数组都标记为true。邻接表对该点所连的店...原创 2018-07-18 21:34:28 · 174 阅读 · 0 评论 -
【题解】洛谷P3225 矿场搭建(割点 tarjan)
https://www.luogu.org/blog/cjyyb/solution-p3225思路还是比较好理解的,不过实现起来挺复杂。。。虽然数据水 但还是注意初始化别搞错了。。我的Cut数组初始化为0时sizeof写的是cut,看了半天没找出来。。。#include<cstdio>#include<iostream>#include<algori...原创 2018-08-18 17:46:12 · 310 阅读 · 0 评论 -
【题解】洛谷P3469 BLO-Blockade(tarjan 割点)
建好图后,我们可以通过dfs记录某一个点之后的子节点个数,并不断更新dfn和low值,如果low值大于等于dfn值(大于代表是一条链,等于代表是一个环),这样都会出现去掉该点后将图分成两部分的情况,所以我们将该点以下子节点个数累加,记录答案为对于每个y及y后的结点*(n-每个y及y后的结点),注意这么操作后会导致只统计要去掉那个点之后的所有结点到要去掉的那个点的距离,而答案我们还需要记录要去掉的那...原创 2018-08-17 20:23:02 · 317 阅读 · 0 评论 -
【题解】洛谷P1726 上白泽慧音(tarjan缩点)
拿到这道题后,知道tarjan算法的应该第一反应就是用tarjan缩点来求。观察一下数据范围,其实我们可以将裸的缩点模板打上去。问题可能集中在第二问,我们只需记录下染色的数组,在第二问时从小到大遍历如果当前点染的是最大的那个颜色,就输出来即可。(代码下附题目背景人物 车万永不过气)#include<cstdio>#include<iostream>#inclu...原创 2018-08-23 20:19:49 · 282 阅读 · 0 评论 -
【题解】洛谷P1262 间谍网络(强联通分量 缩点)
强联通分量缩点的类似模板题(雾)观察题目我们可以用tarjan的缩点来解决,首先我们以每个受到贿赂且没被打上时间戳过的人为起点进行tarjan缩点操作,这里顺道记录下在这个缩点的强联通分量中的贿赂最小值(因为贿赂一个人就可以将这里一锅端)。操作过后遍历n个人,如果没有被打上时间戳那这个间谍就一定不会被抓到,所以输出NO并输出这个最小的序号。否则我们缩点后得到的就是一张有向无环图,需要贿赂的最小...原创 2018-10-03 20:41:34 · 265 阅读 · 0 评论 -
【题解】洛谷P3388 割点(模板)
https://www.luogu.org/blog/user15232/solution-p3388mark一下noip复习时使用原创 2018-10-05 20:58:17 · 425 阅读 · 0 评论