Legal or Not HDU - 3342 (拓扑排序)
注意点: 输入数据中可能有重复,需要进行处理!
1 #include <stdio.h> 2 #include <iostream> 3 #include <cstring> 4 #include <vector> 5 #include <algorithm> 6 #include <sstream> 7 8 9 using namespace std; 10 11 int n, m; 12 13 int indegree[101]; 14 int g[101][101]; 15 16 int main() 17 { 18 while(scanf("%d %d", &n, &m) != EOF) 19 { 20 if(n == 0 && m == 0) 21 break; 22 23 memset(indegree, 0, sizeof(indegree)); 24 memset(g, 0, sizeof(g)); 25 26 int a, b; 27 for(int i = 1; i <= m; ++i) 28 { 29 scanf("%d %d", &a, &b); 30 31 if(g[a][b] == 0) // 输入中有可能有反复输入如1,2;1,2这种情况!!! 32 { 33 g[a][b] = 1; 34 indegree[b]++; 35 } 36 37 } 38 39 int cnt = 0; 40 41 for(int k = 0; k < n; ++k) 42 { 43 int i, j; 44 for(i = 0; i < n; ++i) 45 { 46 if(indegree[i] == 0) 47 { 48 indegree[i] = -1; 49 cnt++; 50 break; 51 } 52 } 53 54 for(j = 0; j < n; ++j) 55 { 56 if(g[i][j] == 1) 57 { 58 indegree[j]--; 59 g[i][j] == 0; 60 } 61 } 62 } 63 64 65 if(cnt == n) 66 cout << "YES" << endl; 67 else 68 cout << "NO" << endl; 69 } 70 71 return 0; 72 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南