zoukankan      html  css  js  c++  java
  • hdu 3342 Legal or Not(拓扑排序)

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<vector>
    #include<queue>
    using namespace std;
    int mat[200][200];
    int ran[200];
    int main()
    {
        int n,m;
        int i,j,k;
        int f,t;
        while(scanf("%d%d",&n,&m),n)
        {
           int ok=1;
           memset(ran,0,sizeof(ran));
           memset(mat,0,sizeof(mat));
           for(i=0;i<m;i++)
           {
               scanf("%d%d",&f,&t);
               if(mat[f][t]==0)//???
               {
                    mat[f][t]=1;
                    ran[t]++;
               }          
           }
           for(i=0;i<n;i++)
           {
               int flag=-1;
               if(ok==0) break;
               for(j=0;j<n;j++)
               {
                   if(ran[j]==0)
                   {
                       flag=j;
                       ran[j]=-1;
                       break;
                   }
               }
               if(flag==-1)
               {
                   ok=0;
                   break;
               }
               for(j=0;j<n;j++)
               {
                   if(mat[flag][j]>0) ran[j]--;
               }
           }
           if(ok==1) printf("YES
    ");
           else printf("NO
    ");
        }
        return 0;
    }
    
  • 相关阅读:
    java爬取Excel表格
    drf-view
    django--View
    tornado的Application的一些事儿
    tornado的路由分发
    线程和asyncio的比较
    GIL
    else的使用
    协程
    生成器代替迭代器
  • 原文地址:https://www.cnblogs.com/sola1994/p/4725391.html
Copyright © 2011-2022 走看看