图结构练习——判断给定图是否存在合法拓扑序列
来源:互联网 发布:博士后 知乎 编辑:程序博客网 时间:2024/06/05 07:18
图结构练习——判断给定图是否存在合法拓扑序列
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
给定一个有向图,判断该有向图是否存在一个合法的拓扑序列。
输入
输入包含多组,每组格式如下。
第一行包含两个整数n,m,分别代表该有向图的顶点数和边数。(n<=10)
后面m行每行两个整数a b,表示从a到b有一条有向边。
输出
若给定有向图存在合法拓扑序列,则输出YES;否则输出NO。
示例输入
1 02 21 22 1
示例输出
YESNO
提示
来源
赵利强
示例程序
#include<stdio.h> #include<string.h> int map[20][20],in[20]; int n; void topo() { int i,j,k,l; for(i=1;i<=n;i++) { k=0; for(j=1;j<=n;j++) if(in[j]==0) { k=1; in[j]=-1; for(l=1;l<=n;l++) if(map[j][l]) in[l]--; break; } if(k==0) break; } if(k==0) printf("NO\n"); else printf("YES\n"); } int main() { int i,j,m,k,t; while(scanf("%d %d",&n,&m)!=EOF) { memset(map,0,sizeof(map));\ memset(in,0,sizeof(in)); while(m--) { scanf("%d %d",&i,&j); map[i][j]=1; in[j]++; } topo(); } }
0 0
- SDUT 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- SDUT2140_图结构练习——判断给定图是否存在合法拓扑序列(邻接表)
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- SDUT OJ 2140 图结构练习——判断给定图是否存在合法拓扑序列
- sdut 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- 图结构练习——判断给定图是否存在合法拓扑序列
- CA证书已成累赘,互联网平台安全信任机制的探讨,纯技术贴。文:高航
- Linux编程——网络编程
- 使用Sublime Text 2编译运行C/C++程序
- iOS 对plist增改操作
- 计算器功能实现
- 图结构练习——判断给定图是否存在合法拓扑序列
- CSS基础学习九:伪类
- Search a 2D Matrix
- 半个柏林的路灯都让这家公司变成了电动汽车充电桩
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 一种Unity2D多分辨率屏幕适配方案
- MyEclipse不能部署工程
- 看透智能机器人现在和未来
- js 压缩图片 H5