码迷,mamicode.com
首页 >  
搜索关键字:tarjan    ( 1608个结果
Tarjan求LCA
Tarjan求LCA是一种离线的LCA求法,它需要先知道所有的询问,之后通过dfs和并查集维护以求出LCA,这是一种线性的做法,如果有n个节点m次询问,那么复杂度为O(n+m)。 具体做法怎么做呢?其实就是dfs+并查集。 我们首先用链式前向星去存这棵树,存所有的询问关系(为什么一会再说),注意询问 ...
分类:其他好文   时间:2018-10-05 10:44:57    阅读次数:118
RMQ
范围最小值问题(Range Minimum Query) 常用Tarjan的Sparse Table算法,预处理时间为$O(nlogn)$,查询为$O(1)$ cpp int rmq[maxn][maxn]; void rmq_init(int a[],int l,int r) { for (int ...
分类:其他好文   时间:2018-10-02 22:20:59    阅读次数:215
[Codeforces 475B] Strongly Connected City
[题目链接] https://codeforces.com/contest/475/problem/B [算法] 建图后运行Tarjan算法 , 判断强连通分量数是否为1 时间复杂度 : O(NM) [代码] ...
分类:其他好文   时间:2018-10-01 18:23:30    阅读次数:138
强联通分量再探 By cellur925
我真的好喜欢图论啊。 (虽然可能理解的并不深hhh) 上一次(暑假)我们初探了强联通分量,这一次我们再探。(特别感谢pku-lyc老师的课件。有很多引用) 上次我们忘记讨论复杂度了。tarjan老爷爷的算法都很strong as flash。这次是O(N)。 强联通分量中任何两个点可互相到达。(显然 ...
分类:移动开发   时间:2018-09-30 23:22:56    阅读次数:313
最大编号 tarjan+逆向建图拓扑排序+DAG上DP
Description Description 给出N 个点,M 条边的有向图,对于每个点v,求A(v) 表示从点v 出发,能到达的编号最大的点。 给出N 个点,M 条边的有向图,对于每个点v,求A(v) 表示从点v 出发,能到达的编号最大的点。 给出N 个点,M 条边的有向图,对于每个点v,求A( ...
分类:编程语言   时间:2018-09-29 22:43:08    阅读次数:187
tarjan强连通算法
#include #include using namespace std; const int MAX_N=100; const int MAX_M=10000; struct edge{ int v,next; int len; }E[MAX_M]; int p[MAX_N],eid; void... ...
分类:编程语言   时间:2018-09-29 14:33:24    阅读次数:124
[bzoj5017][Snoi2017]炸弹 tarjan缩点+线段树优化建图+拓扑
5017: [Snoi2017]炸弹 Description 在一条直线上有 N 个炸弹,每个炸弹的坐标是 Xi,爆炸半径是 Ri,当一个炸弹爆炸时,如果另一个炸弹所在位置 Xj 满足: Xi?Ri≤Xj≤Xi+Ri,那么,该炸弹也会被引爆。 现在,请你帮忙计算一下,先把第 i 个炸弹引爆,将引爆多 ...
分类:其他好文   时间:2018-09-28 13:45:11    阅读次数:192
间谍网络
传送门 终于有一道能够一次AC的Tarjan题啦! 这个题还是很简单的,首先Tarjan缩点,之后把新图建出来之后发现,因为要控制所有间谍,那么肯定得从入度为0的间谍下手,所以如果有任何入度为0的间谍不愿意被收买的话任务就失败了,否则的话直接topo排序统计答案即可。 图也许是不联通的,所以要用循环 ...
分类:其他好文   时间:2018-09-28 01:32:09    阅读次数:192
P2272 [ZJOI2007]最大半连通子图
传送门 题目简单来说就是给一个有向图,将图转化为DAG图后,求图中最长链及最长链的个数。 思路 用 tarjan 缩点重构将原图转换为一个有向无环图,让后在新图上跑 topo 求出最长链。 最长链的个数可以用动态规划,设 e[ i ] 表示新图中以 i 为终点的方案数,那么 e[ i ] 就等于连到 ...
分类:其他好文   时间:2018-09-26 20:44:35    阅读次数:181
[hdu2460]network(依次连边并询问图中割边数量) tarjan边双联通分量+lca
题意: 给定一个n个点m条边的无向图,q个操作,每个操作给(x,y)连边并询问此时图中的割边有多少条。(连上的边会一直存在) n<=1e5,m<=2*10^5,q<=1e3,多组数据。 题解: 用tarjan求边双连通分量并缩点,缩点后组成一棵树,记录此时割边共有sum条。 连接(x,y),设c[i ...
分类:移动开发   时间:2018-09-26 18:20:24    阅读次数:227
1608条   上一页 1 ... 35 36 37 38 39 ... 161 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!