拓扑排序
来源:互联网 发布:金蝶kis 引出数据失败 编辑:程序博客网 时间:2024/06/07 22:11
HDU3342
#include<stdio.h>#include<iostream>#include<string.h>#include<algorithm>#include<vector>#include<queue>using namespace std;int N,M;vector<int> G[105];int Count[105];int ans[105],pos;int first[105];void TopoSort(){ queue<int> q; pos=0; for(int i=0;i<N;i++) { if(Count[i]==0)q.push(i); } if(q.empty())return ; memset(ans,0,sizeof(ans)); while(!q.empty()) { int u=q.front(); q.pop(); ans[pos++]=u; int d=G[u].size(); for(int i=0;i<d;i++) { int t=G[u][i]; if(--Count[t]==0)q.push(t); } }}int main(){ while(~scanf("%d%d",&N,&M)) { if(N==0 && M==0)break; for(int i=0;i<N;i++) G[i].clear(); memset(Count,0,sizeof(Count)); int u,v; for(int i=0;i<M;i++) { scanf("%d%d",&u,&v); G[u].push_back(v); Count[v]++; } TopoSort(); if(pos==N)printf("YES\n"); else printf("NO\n"); } return 0;}
0 0
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 【拓扑排序】
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 拓扑排序
- 设计模式C++实现(7)——外观模式、组合模式
- IOS基础学习日志(四)手势与触摸
- Intent的一些用法
- Hibernate C3P0 连接池case
- 理解ThreadLocal
- 拓扑排序
- 17周项目五(百钱百鸡)
- 来谈谈SQL数据库中"简单的"SELECT TOP—可能有你从未注意到的细节
- ORA-00001: unique constraint (...) violated并不一定是数据冲突
- Fatal signal 11 (SIGSEGV) at 0x000007c4 (code=1)
- 设计模式C++实现(8)——代理模式
- C#代码是区分大小写的。
- UltraEdit 对UTF-8文件的自动处理
- bmp图片转16进制数据序列(更新)