HDU1285 确定比赛名次(拓扑排序)
来源:互联网 发布:sqlserver 2005下载 编辑:程序博客网 时间:2024/05/09 03:14
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<vector>#include<queue>using namespace std;vector<vector<int> >G(505);int Count[505];int indegree[505];int main(){ int n,m; //freopen("d:\\test.txt","r",stdin); while(cin>>n>>m) { memset(indegree,0,sizeof(indegree)); memset(Count,0,sizeof(Count)); priority_queue<int,vector<int>,greater<int> >q; while(!q.empty()) { q.pop(); } for(int i=0;i<m;i++) { int u,v; cin>>u>>v; if(find(G[u].begin(),G[u].end(),v)==G[u].end()) //find函数没找到v返回容器尾部 { G[u].push_back(v); indegree[v]++; } } for(int i=1;i<=n;i++) { if(!indegree[i]) q.push(i); } int j=0; while(!q.empty()) { int cur=q.top(); q.pop(); Count[j++]=cur; for(int i=0;i<G[cur].size();i++) { int e=G[cur][i]; indegree[e]--; if(!indegree[e]) q.push(e); } } for(int i=0;i<n;i++) { if(i<n-1) cout<<Count[i]<<" "; else cout<<Count[i]; } cout<<endl; for(int i=0;i<505;i++) G[i].clear(); } return 0;}
0 0
- 【拓扑排序】 hdu1285 确定比赛名次
- hdu1285 确定比赛名次 拓扑排序
- 确定比赛名次(hdu1285拓扑排序)
- hdu1285 确定比赛名次 (拓扑排序)
- HDU1285 确定比赛名次 拓扑排序
- hdu1285 确定比赛名次(拓扑排序)
- HDU1285 确定比赛名次 【拓扑排序】
- hdu1285 - 确定比赛名次 (拓扑排序)
- HDU1285 确定比赛名次(拓扑排序)
- HDU1285 确定比赛名次(拓扑排序)
- HDU1285确定比赛名次 + 拓扑排序
- hdu1285 确定比赛名次 (拓扑排序)
- Hdu1285 拓扑排序-确定比赛名次
- HDU1285确定比赛名次【拓扑排序】
- HDU1285确定比赛名次(拓扑排序)
- hdu1285 确定比赛名次 (简单拓扑排序)
- hdu1285 确定比赛名次(拓扑排序)
- HDU1285确定比赛名次(拓扑排序)
- javascript 图片左右移动
- JAVASE学习笔记第三天
- redis配置文件
- Java 并发编程之测试(三)
- JAVASE学习笔记第四天
- HDU1285 确定比赛名次(拓扑排序)
- JAVASE学习笔记第5天
- ACM相关博文,参见:http://blog.csdn.net/yang_zongjun
- JAVASE学习笔记第6天
- 手贱 + 做事不认真想想后果 == 悲剧!
- 139邮箱短信报警实现
- 第一个测试
- [编程练习] 卷积和实现demo——对阶跃函数进行一维高斯模糊
- 通过grub2和光盘ISO文件硬盘安装debian7.4.0系统