【uva-10305】Ordering Tasks (拓扑排序中最简单的一道
来源:互联网 发布:衣服数据参考 编辑:程序博客网 时间:2024/05/16 13:03
题目大意:
m是任务数,n是已知偏序个数。
接下来n行是偏序。
最后输出满足偏序条件的任意一组。
很随意很和谐的。
连谷歌翻译都不用的。
/* uva 10305 by zhuhua Time limit: 3000 ms AC Time: 0 ms???*/#include <iostream>#include <cstring>#include <vector>#include <stack>using namespace std;int task[110];vector <int> S[110];vector <int> tot;stack <int> output;bool vis[110];bool flag[110];void dfs(int x){ int i; vis[x]=true; for(i=0;i<S[x].size();i++) { int next=S[x][i]; if(!vis[next]) dfs(next); } output.push(x);}int main(){ int n,m,x,y; while(cin>>n>>m) { if(n==0&&m==0)break; int i=1; while(i<=n) {S[i].clear();i++;} tot.clear(); while(!output.empty()) output.pop(); memset(flag,0,sizeof(flag)); memset(vis,0,sizeof(vis)); while(m--) { cin>>x>>y; S[x].push_back(y); if(!flag[x]) {flag[x]=true;tot.push_back(x);} if(!flag[y]) {flag[y]=true;tot.push_back(y);} } for(i=0;i<tot.size();i++) { int now=tot[i]; if(!vis[now]) dfs(now); } int cnt=0; while(!output.empty()) { int out=output.top(); if(cnt++)cout<<' '; cout<<out; output.pop(); } for(i=1;i<=n;i++) { if(!flag[i]) { if(cnt++)cout<<' '; cout<<i; } }cout<<endl; } return 0;}
阅读全文
0 0
- 【uva-10305】Ordering Tasks (拓扑排序中最简单的一道
- UVA 10305 - Ordering Tasks 很简单的拓扑排序题目。
- uva 10305 Ordering Tasks(拓扑排序)
- uva 10305 Ordering Tasks (拓扑排序)
- UVa 10305 Ordering Tasks (拓扑排序模板)
- [UVA 10305] Ordering Tasks (拓扑排序)
- UVa 10305 - Ordering Tasks 拓扑排序
- UVa 10305 Ordering Tasks(拓扑排序)
- UVa 10305 - Ordering Tasks 拓扑排序题解
- UVA - 10305 Ordering Tasks (拓扑排序)
- Ordering Tasks - UVa 10305 拓扑排序
- Uva 10305 Ordering Tasks(拓扑排序)
- Ordering Tasks From:UVA, 10305(拓扑排序)
- UVa 10305 - Ordering Tasks(拓扑排序)
- UVA - 10305 - Ordering Tasks (拓扑排序!)
- UVA - 10305 (Ordering Tasks) 拓扑排序
- UVa 10305 Ordering Tasks(拓扑排序)
- UVA 10305- Ordering Tasks(经典拓扑排序)
- 《编程之美》介绍和pdf下载
- hdu1272小希的迷宫(并查集)
- golang web开发框架httprouter:开发简单的 REST API 服务器
- spring入门程序HelloWorld
- 集合类,Collection,List
- 【uva-10305】Ordering Tasks (拓扑排序中最简单的一道
- 完美解决Android Studio在gradle上的各种问题
- Ubuntu 17.04 安装Hadoop 3.0.0-beta1
- 数据库的三大范式
- 【uva-200】Rare Order(拓扑排序过的第一道)
- 62. Unique Paths
- 一些UiAutomator测试时出现的问题
- Matlab常用数据类型(一)
- macOS系统 安装MySQL-python驱动方法