hdu3342 Legal or Not【拓扑排序】
来源:互联网 发布:和珅 知乎 编辑:程序博客网 时间:2024/06/05 20:10
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3342
题意:有n个人,他们之间有着师徒关系,现在告诉你m组关系(x,y),即x是y的师傅,现在问你这些关系是否出现混乱
解析:题目求解拓扑排序是否有可行解
#include <bits/stdc++.h>using namespace std;const int maxn = 105;vector<int>G[maxn];int in[maxn];bool topu(int n){ queue<int>q; for(int i=0;i<n;i++) { if(!in[i]) q.push(i); } int cnt = 0; while(!q.empty()) { int u = q.front(); q.pop(); cnt++; for(int i = 0;i<(int)G[u].size();i++) { int v = G[u][i]; if(--in[v]==0) q.push(v); } } return cnt==n;}int main(void){ int n,m; while(~scanf("%d %d",&n,&m)) { if(!n && !m) break; memset(in,0,sizeof(in)); for(int i=0;i<n;i++) G[i].clear(); for(int i=0;i<m;i++) { int x,y; scanf("%d %d",&x,&y); G[x].push_back(y); in[y]++; } if(topu(n)) puts("YES"); else puts("NO"); } return 0;}
阅读全文
0 0
- hdu3342 Legal or Not 拓扑排序
- Legal or Not(hdu3342拓扑排序)
- hdu3342 Legal or Not (拓扑排序+邻接矩阵)
- hdu3342 Legal or Not---拓扑排序
- HDU3342 Legal or Not 【拓扑排序】
- HDU3342 Legal or Not(拓扑排序)
- hdu3342 Legal or Not(拓扑排序)
- hdu3342 Legal or Not【拓扑排序】
- HDU3342:Legal or Not(拓扑排序)
- HDU3342---Legal or Not(拓扑排序。)
- HDU3342 Legal or Not 解题报告--拓扑排序
- hdu3342 Legal or Not(拓扑排序,判环)
- HDU3342 Legal or Not【拓扑排序】【链式前向星】
- HDU3342 Legal or Not 拓扑排序判环
- hdu3342 Legal or Not(简单拓扑排序判定)
- HDU3342---Legal or Not
- HDU3342-Legal or Not
- HDU3342-Legal or Not
- 个人掌握知识分享SEO(搜索引擎优化) robots文件优化
- GIT乱码出现解决记录
- STM32 GPIO——流水灯例程 学习总结
- 【HDU1792】A New Change Problem
- Could not find method compile() for arguments [project:'lib'] on root project ''
- hdu3342 Legal or Not【拓扑排序】
- spring配置中annotation-config与component-scan区别
- jstree 选中指定节点-yellowcong
- KETTLE在进行数据加工时 时间 与系统时间不一致
- tensorflow图片预处理和测试效果(resize,crop,pad等)
- jsp插入mysql中文乱码解决
- 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005
- 【笔记】Struts
- MongoDB数据库的基本操作命令以及和mysql进行比较