BNUOJ 4138 Dizzy Cows
来源:互联网 发布:淘宝商品自动被下架了 编辑:程序博客网 时间:2024/05/16 10:45
给一个有向图,之后,在给一些无向边,问怎么把这些边放进有向图中能不出现环。
解法相当简单,直接拓扑排序就行了,按照拓扑序的顺序加边,必然不会出现环。
#include <iostream>#include <cstdio>#include <cstring>#include <vector>using namespace std;vector<int> v[110000];int in[110000],topno[110000];int main(){ int n,m1,m2,i,j,t1,t2; scanf("%d%d%d", &n,&m1,&m2); memset(in,0,sizeof(in)); for (i=0; i<m1; i++) { scanf("%d%d",&t1,&t2); in[t2]++; v[t1].push_back(t2); } t2=0; t1=1; while (t2 != n) { for (i=1; i<=n; i++) { if (in[i] == 0) { for (j=0; j<v[i].size(); j++) { in[v[i][j]]--; } t2++; in[i]=-1; topno[i]=t1; t1++; } } } for (i=0; i<m2; i++) { scanf("%d%d",&t1,&t2); if (topno[t1] > topno[t2]) printf("%d %d\n",t2,t1); else printf("%d %d\n",t1,t2); }}
- BNUOJ 4138 Dizzy Cows
- 【洛谷2017】 【USACO09DEC】晕牛Dizzy Cows
- 洛谷 P2017 [USACO09DEC]晕牛Dizzy Cows
- Cows
- Cows
- BNUOJ 1777
- BNUOJ 6242
- 四叉树 bnuoj
- BNUOJ 14519
- BNUOJ 8108
- BNUOJ 8108
- BNUOJ 26190 --------------- In Braille
- BNUOJ 3013 Ancient Keyboard
- BNUOJ 12884 kruskal+ext_lca
- BNUOJ 4304 硬币迷阵
- BNUOJ 3884 Hay Expenses
- BNUOJ 4156 Chocolate Buying
- BNUOJ 14280 Extra Krunch
- sequencefile 由hdfs 上读取文件
- java从excle.xml表中读取数据(odbc方式)
- 推荐一个做人的好视频
- 关于设备号的思考
- 领域逻辑与业务逻辑的关系
- BNUOJ 4138 Dizzy Cows
- 怎样区分T1加权像和T2加权像
- 项目log4j日志管理详解
- 程序员的囧途二三事
- resin session共享实现技术
- 电子商务平台的搭建技巧与成功案例资料集
- Apache 指定的网络名不再可用 winnt_accept: Asynchronous AcceptEx faile
- NSTimer与Run loop Modes
- poj2017