HDU 2767 Proving Equivalences(强连通 Tarjan+缩点)
ACM
题目地址:HDU 2767
题意:
给定一张有向图,问最少添加几条边使得有向图成为一个强连通图。
分析:
Tarjan入门经典题,用tarjan缩点,然后就变成一个有向无环图(DAG)了。
我们要考虑的问题是让它变成强连通,让DAG变成强连通就是把尾和头连起来,也就...
分类:
其他好文 时间:
2014-07-30 17:38:34
阅读次数:
212
POJ 1236 Network of Schools(强连通 Tarjan+缩点)
ACM
题目地址:POJ 1236
题意:
给定一张有向图,问最少选择几个点能遍历全图,以及最少添加几条边使得有向图成为一个强连通图。
分析:
跟HDU 2767 Proving Equivalences(题解)一样的题目,不过多了个问题,其实转化成DAG后就不难考虑了,其实只要选...
分类:
Web程序 时间:
2014-07-30 17:38:14
阅读次数:
252
首先tarjan缩点,重新建图后,每个点的权值就是该点包含点的个数。
然后从入度为0的点开始记忆化搜索,dp[i]表示以i为根最多包含多少点。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define inf 0x3f3f3f3f
#define e...
分类:
其他好文 时间:
2014-07-02 08:37:48
阅读次数:
211
用tarjan进行缩点。
然后用dfs求最长路。水体。。。
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define maxn 110000
vectorold[maxn];
vectorvec[maxn];
int dnf[maxn],low[maxn],instac...
分类:
其他好文 时间:
2014-06-22 11:51:01
阅读次数:
203
链接:
POJ 2186 Popular Cows
题意:
每一头牛都希望在牛群里面备受瞩目,在一个牛群中有N头牛(1
输入:
第一行两个整数 N 和 M
第2 到 M + 1 行,两个分开的数 A,B,意味着 A认为 B 更受欢迎。
输出:
被所有牛认为受欢迎的牛的个数
比如输入:
3 3
1 2
2 1...
分类:
其他好文 时间:
2014-06-08 18:20:40
阅读次数:
204