uva10305 拓扑排序经典dfs
来源:互联网 发布:淘宝网购手机怎么保修 编辑:程序博客网 时间:2024/06/08 14:57
#include<stdio.h>#include<string.h>#define maxx 100+5int mapp[maxx][maxx],topo[maxx],c[maxx];int n,t;int dfs(int u){ int v; c[u]=-1; for(int v=1;v<=n;v++) { if(mapp[u][v]) { if(c[v]<0) return 0; else if(c[v]==0&&dfs(v)==0) return 0; } } c[u]=1; topo[t--]=u; return 1;}int toposort(){ int i; t=n; memset(c,0,sizeof(c)); for(i=1;i<=n;i++) if(c[i]==0&&dfs(i)==0) return 0; return 1;}int main(){ int m,i; while(scanf("%d%d",&n,&m)!=EOF&&m||n) { int a,b; memset(mapp,0,sizeof(mapp)); while(m--) { scanf("%d%d",&a,&b); mapp[a][b]=1; } if(toposort()) { for( i=1;i<n;i++) printf("%d ",topo[i]); printf("%d\n",topo[i]); } } return 0;}
0 0
- uva10305 拓扑排序经典dfs
- uva10305(拓扑排序dfs)
- UVA10305 Ordering Tasks【DFS】【拓扑排序】
- Uva10305 - Ordering Tasks(拓扑排序经典例题)
- UVa10305拓扑排序
- 拓扑排序 uva10305
- UVA10305拓扑排序
- uva10305 拓扑排序
- uva10305-拓扑排序
- uva10305 拓扑排序
- Uva10305-拓扑排序
- UVA10305 Ordering Tasks 拓扑排序
- Uva10305 Ordering Tasks(拓扑排序)
- UVA10305 Ordering Tasks(拓扑排序)
- lightoj1003 Drunk 、uva10305 Ordering Tasks (基于dfs的拓扑排序)
- 例题6-15 拓扑排序 DFS实现和STL实现 uva10305
- UVa10305 - Ordering Tasks拓扑排序 天书啊
- uva10305- Ordering Tasks(拓扑排序)
- 概率图模型的学习——Probabilistic Graphical Model
- python 实现欧拉计划26题
- C++ 成员运算符(. 和 ->)
- 了解 GNU GPL/GNU LGPL/BSD/MIT/Apache协议
- 理解RESTful架构
- uva10305 拓扑排序经典dfs
- C++单例模式的最实用写法
- Node Package: options
- 1008: [HNOI2008]越狱
- 322. Coin Change
- 饿了么开源项目:便捷高效的Android数据持久化存储框架
- 论vr虚拟现实
- solution Of 1029. Median (25)
- Android的文件系统结构