UVa10305 Ordering Tasks
来源:互联网 发布:关于网络文学社的建议 编辑:程序博客网 时间:2024/05/23 00:00
题意:n个任务,m组顺序要求,输出一组任务的排序,能满足所有要求。
思路:DFS,拓扑排序。最先访问到的任务肯定是可以作为最后完成的,如果还有需要在这之后完成的,一定会更早访问到。图中可能会有多个连通分量,但是它们之间的顺序是无关紧要的。
#include <iostream> #include <stdio.h> #include <cmath> #include <algorithm> #include <iomanip> #include <cstdlib> #include <string> #include <memory.h> #include <vector> #include <queue> #include <stack> #include <map> #include <set> #include <ctype.h> #define INF 1000000010 #define ll long long #define max3(a,b,c) max(a,max(b,c)) #define MAXN 1000using namespace std; vector<int> E[110];int vis[110];stack<int> s;void _sort(int x){vis[x]=true;int siz=E[x].size();for(int i=0;i<siz;i++){if(!vis[E[x][i]]){_sort(E[x][i]);}}s.push(x);}int main(){int n,m;while(cin>>n>>m){if(n==0&&m==0)break;memset(vis,0,sizeof(vis));for(int i=1;i<=m;i++){int a,b;cin>>a>>b;E[a].push_back(b);}for(int i=1;i<=n;i++){if(!vis[i])_sort(i);}while(!s.empty()){int cur=s.top(); s.pop();cout<<cur;if(!s.empty())cout<<" ";}cout<<endl;}return 0;}
0 0
- UVA10305- Ordering Tasks
- uva10305 Ordering Tasks
- UVa10305 Ordering Tasks
- Ordering Tasks UVA10305
- UVa10305 Ordering Tasks
- UVa10305 - Ordering Tasks
- UVA10305 - Ordering Tasks
- Uva10305——Ordering Tasks
- UVA10305 Ordering Tasks 拓扑排序
- Uva10305 Ordering Tasks(拓扑排序)
- UVA10305 Ordering Tasks(拓扑排序)
- UVA10305 Ordering Tasks【DFS】【拓扑排序】
- UVa10305 - Ordering Tasks拓扑排序 天书啊
- Uva10305 - Ordering Tasks(拓扑排序经典例题)
- uva10305- Ordering Tasks(拓扑排序)
- UVa10305 Ordering Tasks(拓扑排序水题)
- 例题6-15 UVa10305 Ordering Tasks(拓扑排序)
- Uva10305 Ordering Tasks 【拓扑排序】【例题6-15】
- MYSQL常用命令
- 【论坛精华FAQ】Cocosd-x经典问题汇总 第一期
- 最小生成树算法
- JSONObject,JSONArray使用手册 .
- Thread.sleep()和Thread.currentThread().sleep()区别
- UVa10305 Ordering Tasks
- xml格式异常-CDATA嵌套
- ASP.net 将Table做为参数传入SAP函数
- jQuery HTML5 uploader
- PowerDesigner逆向工程导入MYSQL数据库总结
- 文言文翻译
- 如果宏安全性设置为“禁用所有宏,并且不通知”,将自动禁用所有宏。使用下列步骤可启用宏。
- EA(Enterprise Architect)修改字体大小
- 字符串与指针