摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3639思路:先按一般的思路来,把杂乱的有向图通过缩点变成有向无环图,然后建反向图,并标记每个点的入度(最大值一定在反向图的入度为的点中)然后dfs一下下就可以了,最后就是在原图中找等于MAX的点就可以了。View Code 1 #include 2 #include 3 #include 4 const int MAXN=5000+10; 5 using namespace std; 6 vectormp1[MAXN];//原图 7 vectormp2[MAXN];//反向图 8 ... 阅读全文
摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2208思路:应用了并查集的思想,具体见注释;View Code 1 #include<iostream> 2 const int MAXN=14; 3 using namespace std; 4 bool map[MAXN][MAXN]; 5 int root[MAXN]; 6 int N,M; 7 8 //n为当前的点,m为目前的气球数目 9 bool dfs(int n,int m){10 if(m>M)return false;11 if(n==N)return true. 阅读全文