解题思路: tarjan缩点后算出度为0的点有几个,如果只有一个且这个点为爱心天使就行了; ...
分类:
其他好文 时间:
2018-04-19 23:58:20
阅读次数:
293
#include using namespace std; const int N=1e5+10; stacks; vectorvv[N]; vectorv2[N]; bool vis[N]; int n,m,tim,num,cnt,in_[N];int ans[N]; int dfn[N],low... ...
分类:
编程语言 时间:
2018-04-19 23:56:03
阅读次数:
242
题目:http://poj.org/problem?id=1236 通过传输文件的特点可以看出要先求强联通分量,缩点; 问题1:即缩点后入度为0的点,从它们开始传文件可以传给所有学校; 问题2:对于所有入度为0、出度为0的点,对应连一条边;多余的随便再连一下就可以,所以答案是max(入度为0点数,出 ...
分类:
其他好文 时间:
2018-04-17 19:50:37
阅读次数:
193
网上对这题一致好评,然而像我这种没见过世面的,不知道什么是好题,什么题不好...... 数据会出现环形依赖关系,环形里面的软件选一个就要全选,相当于一件物品。 所以先跑Tarjan,把强连通分量缩成一个点,之后按强连通分量建图,原图 u->v,新边 scc[v]->scc[u],表示安装scc[v] ...
分类:
其他好文 时间:
2018-04-15 16:25:51
阅读次数:
153
Tarjan 求强联通图,割点,桥相关问题 用vis[i]标记i点第几次被访问,low数组标记i点能够到达的最远的祖先,那么当low·[i] == vis[i] 构成联通图。。。low[i] >= vis[i]时为割点(关节点) http://acm.hdu.edu.cn/showproblem.p ...
分类:
其他好文 时间:
2018-04-14 15:20:29
阅读次数:
231
明明优化了spfa还是好慢…… 因为只能取一次值,所以先tarjan缩点,把一个scc的点权和加起来作为新点的点权,然后建立新图。在新图上跑spfa最长路,最后把酒吧点的dis取个max就是答案。 ...
Tarjan模板 拓扑排序模板 士兵排队问题 输入: n ,m 有m次操作 士兵人数 a b 若干行,表示a比b高 输出 合法的排队序列(由低到高) 最短路径模板 Floyd dijstra模板 SPFA 最小生成树模板 prim算法T_T(不会) Kruskal算法 并查集模板 ...
分类:
其他好文 时间:
2018-04-09 23:17:49
阅读次数:
347
tarjan模板 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 const int maxn=20010; 6 const int maxm=50010; 7 struct ...
分类:
其他好文 时间:
2018-04-09 23:14:11
阅读次数:
204
//给一个n*m的地图。坦克从(0 , 0)開始走 //#表示墙不能走,*表示传送门能够传送到指定地方,能够选择也能够选择不传送 //数字表示该格的矿石数, //坦克从(0,0)開始走。仅仅能往右和往下走。 //问最多能得到多少矿石 //直接建图,但因为有传送门。须要缩点 //然后用dfs直接搜一条 ...
分类:
其他好文 时间:
2018-04-08 22:24:44
阅读次数:
151
[HAOI2010]软件安装 Description 现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi。我们希望从中选择一些软件安装到一台磁盘容量为M计算机上,使得这些软件的价值尽可能大(即Vi的和最大)。但是现在有个问题:软件之间存在依赖关系,即软件i只有在安装了软 ...
分类:
其他好文 时间:
2018-04-08 18:22:14
阅读次数:
167