tarjan缩点后拓扑排序,每一个点用一个bitset记录哪些点能到达它。 PS:数据太水,暴力能过。 ...
分类:
Web程序 时间:
2016-05-15 21:31:18
阅读次数:
259
题目链接 先是强连通分量缩点,然后出来一个DAG 然后就可以DP啦,要找出每个SCC能到达的SCC有哪些 如果直接存一个二维数组来传递闭包的话肯定会TLE对吧 于是我们使用了神奇的bitset就快多了 1 #include<cstdio> 2 #include<cstdlib> 3 #include
分类:
Web程序 时间:
2016-02-01 22:17:14
阅读次数:
279
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2208DescriptionInput输入数据第一行是图顶点的数量,一个正整数N。 接下来N行,每行N个字符。第i行第j列的1表示顶点i到j有边,0则表示无边。Output输出一行一个整数,表...
分类:
Web程序 时间:
2015-12-07 20:23:47
阅读次数:
177
两次dfs缩点,然后n次dfs暴搜。 1 #include 2 #include 3 #include 4 using namespace std; 5 #define N 2001 6 vectorG[N],rG[N],vs,G2[N]; 7 typedef vector::iterator IT...
分类:
移动开发 时间:
2014-11-06 12:32:58
阅读次数:
151
题目大意:给定一个n个点的有向图,求有多少点对(x,y),使x沿边可到达y
设f[i][j]为从i到j是否可达
首先强联通分量中的任意两个点均可达 于是我们利用Tarjan缩点
缩点之后是一个拓扑图,我们求出拓扑序,沿着拓扑序从后向前DP,状态转移方程为:
f[i][k]=or{ f[j][k] } (i有直连边到达j,1
鉴于每个点的值只会是1或者0,所以我们可以直接状压,或者干脆开b...
分类:
编程语言 时间:
2014-10-13 15:51:39
阅读次数:
157
2208: [Jsoi2010]连通数Time Limit:20 SecMemory Limit:512 MBSubmit:1235Solved:488[Submit][Status]DescriptionInput输入数据第一行是图顶点的数量,一个正整数N。 接下来N行,每行N个字符。第i行第j列...
分类:
Web程序 时间:
2014-08-21 13:12:24
阅读次数:
205