zoukankan      html  css  js  c++  java
  • HDU3342Legal or Not

    
    
     1 #include<cstdio>
     2 #include<iostream>
     3 #include<algorithm>
     4 #include<cstring>
     5 #include<cmath>
     6 #include<queue>
     7 #include<stack>
     8 #include<cstdlib>
     9 #include<vector>
    10 using namespace std;
    11 
    12 int n,m;
    13 int in[101];
    14 vector<int>ve[101];
    15 queue<int>Q;
    16 
    17 void init()
    18 {
    19     memset(in,0,sizeof(in));
    20     for(int i=0;i<n;i++)
    21     {
    22         ve[i].clear();
    23     }
    24 }
    25 
    26 int main()
    27 {
    28     while(~scanf("%d%d",&n,&m))
    29     {
    30         if(!n&&!m)break;
    31         init();
    32         for(int i=0;i<m;i++)
    33         {
    34             int u,v;
    35             scanf("%d%d",&u,&v);
    36             ve[u].push_back(v);
    37             in[v]++;
    38         }
    39         for(int i=0;i<n;i++)
    40         {
    41             if(in[i]==0)
    42                 Q.push(i);
    43         }
    44         int num=0;
    45         int add[101];
    46         while(!Q.empty())
    47         {
    48             int t=Q.front();
    49             Q.pop();
    50             add[num++]=t;
    51             while(!ve[t].empty())
    52             {
    53                 if(--in[ve[t].back()]==0)
    54                 {
    55                     Q.push(ve[t].back());
    56                 }
    57                 ve[t].pop_back();
    58             }
    59         }
    60         if(num==n)printf("YES\n");
    61         else
    62             printf("NO\n");
    63     }
    64     return 0;
    65 }
    
    
    
     
  • 相关阅读:
    闭包
    this
    函数声明,表达式,构造函数
    算法学习_栈
    LeetCode刷题_140
    2020/3/20 刷题
    2020/3/19 刷题
    2020/3/13_C++实验课
    刷题(主要是DFS) 2020年3月12日
    DFS的一些题2020/3/11
  • 原文地址:https://www.cnblogs.com/zafuacm/p/3133660.html
Copyright © 2011-2022 走看看