题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=2094

对于是否有环,是通过一个N(节点数)的循环来判定。检查并更新每个节点的入度数。

每找到一个入度唯一的节点就是它的临边取消,即让他的下个节点的入度减一;最后看看入度为0的节点数是否为N。

这道题我还多加了个判断看看是否含有多个冠军的可能。

这道题倒是没有那么麻烦,没打用到拓扑。

View Code

 1 #include <stdio.h>
 2 #include <string.h>
 3 struct node
 4 {
 5     char str[1005];
 6 }a[1005];
 7
 8 int count;
 9 int map[1005][1005];
10 int in[1005];
11 int main()
12 {
13     int c,b,n,i,j,leap,flag;
14     char s1[105],s2[105];
15     while(scanf("%d",&n)&&n)
16     {
17         count = -1;
18         memset(in,0,sizeof(in));
19         for(i = 0;i < n;i++)
20         {
21             scanf("%s %s",s1,s2);
22             leap = 0;
23             for(j = 0;j <= count;j++)
24             if(strcmp(s1,a[j].str) == 0)
25             {
26                 leap = 1;
27                 break;
28             }
29             if(!leap)
30             count++,strcpy(a[count].str,s1);
31             c = j;
32             flag = 0;
33             for(j = 0;j <= count;j ++)
34             if(strcmp(s2,a[j].str) == 0)
35             {
36                 flag = 1;
37                 break;
38             }
39             if(!flag)
40             count++,strcpy(a[count].str,s2);
41             b = j;
42             map[c][b] = 1;
43             in[b]++;
44         }
45         leap = 0;
46         for(i = 0;i <= count;i++)
47         if(in[i] == 0)
48         leap++;
49         if(leap > 1||leap == 0)
50         puts("No");
51         else
52         printf("Yes\n");
53     }
54     return 0;
55 }

转载于:https://www.cnblogs.com/0803yijia/archive/2012/08/02/2620696.html

HDU hdu 2094 产生冠军 拓扑排序 判定环相关推荐

  1. HDU 4857 逃生 (反向拓扑排序 容器实现)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4857 逃生 Time Limit: 2000/1000 MS (Java/Others)    Mem ...

  2. HDU 3342 Legal or Not(拓扑排序)

    描述 ACM-DIY is a large QQ group where many excellent acmers get together. It is so harmonious that ju ...

  3. [ACM] hdu 1285 确定比赛 (拓扑排序)

    确定比赛 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...

  4. 题解报告:hdu 5695 Gym Class(拓扑排序)

    题目链接:acm.hdu.edu.cn/showproblem.php?pid=5695 Problem Description 众所周知,度度熊喜欢各类体育活动. 今天,它终于当上了梦寐以求的体育课 ...

  5. HDU 1285 确定比赛名次 拓扑排序(邻接矩阵 邻接表

    确定比赛名次 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description ...

  6. HDU Problem 4857 逃生【拓扑排序+优先队列】

    逃生 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  7. CCF CSP 点亮数字人生(记忆化搜索+拓扑排序判环)

    题目背景 土豪大学的计算机系开了一门数字逻辑电路课,第一个实验叫做"点亮数字人生",要用最基础的逻辑元件组装出实际可用的电路.时间已经是深夜了,尽管实验箱上密密麻麻的连线已经拆装了 ...

  8. HDU 2647 Reward 拓扑排序

    http://acm.hdu.edu.cn/showproblem.php?pid=2647 题意: 输入N和M代表N个人和M组数据,M组数据中的A和B代表A的工资要比B的工资高,底薪是(888元), ...

  9. 【拓扑排序】确定比赛名次

    HDU P1285 确定比赛名次 拓扑排序裸题qwq 注意:入度为一的点删掉之后,它的入度要更新为-1 这个题刷出了我人生中第一次PE 可还行qaq 我搜索PE是输出格式与标准输出不符, 结果发现语言 ...

最新文章

  1. [CareerCup] 8.5 Online Book Reader System 在线读书系统
  2. OpenFlow Switch — 1.3 规范
  3. mysql主键索引_MySQL索引之主键索引
  4. ARMV8虚拟中断的介绍
  5. 计算机地图制图知识点,地图制图知识点整理
  6. weblogic 安装教程
  7. 我们为什么要接受教育
  8. JVM调优总结(二)
  9. Jquery .net MVC
  10. 贵州省获批开展公共资源交易区块链数据共享工作试点
  11. Linux: Shared MIME
  12. Laravel5.x 封装的上传图片类
  13. 重编译 microsip 和 pjsip 支持 mp3 录音
  14. Spring项目启动时Error creating bean with name ‘xxxxxx‘: Bean with name ‘xxxxxx‘ has been injected into ot
  15. Android 颜色对照表
  16. 桶装水同城预订下单送水小程序开发制作(水站桶装水配送系统)
  17. Python运用Xpath爬取故宫壁纸
  18. 电脑查看曾经连接上的wifi密码
  19. 杀毒软件工作原理 及 现在主要杀毒技术
  20. 哲♂学【前排提醒非题解】

热门文章

  1. linux下mkdir头文件_整理Linux下gcc编译中关于头文件与库文件搜索路径相关问题
  2. FCM算法实现Python(简洁版)
  3. Til the Cows Come Home (最短路问题, 模板)
  4. 第二十三讲 狄拉克函数(冲激函数)(补充)
  5. @SuppressWarnings注解用法
  6. 少儿编程:玩游戏不如设计游戏!
  7. Oracle本地管理对照数据字典管理表空间
  8. Android:主题(Theme)
  9. UA MATH523A 实分析1 集合论基础7 一些度量空间基本概念
  10. UA MATH575B 数值分析下III 图像恢复