zoukankan      html  css  js  c++  java
  • HDU hdu 2094 产生冠军 拓扑排序 判定环

    题目连接 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 }
  • 相关阅读:
    leetcode41
    leetcode32
    leetcode312
    leetcode10
    leetcode85
    leetcode124
    leetcode301
    leetcode84
    一文读懂机器学习大杀器XGBoost原理
    【干货】机器学习中的五种回归模型及其优缺点
  • 原文地址:https://www.cnblogs.com/0803yijia/p/2620696.html
Copyright © 2011-2022 走看看