zoukankan      html  css  js  c++  java
  • hdoj 4940 强连通图

    Destroy Transportation system

    对于每一个点,£A=等效出流=破坏有向边

     £B=等效入流=破坏有向边+rebulid

    可以看作当存在某一集合 £B<£A时,条件不成立

    可以推出,相邻两个点都不满足,则这两个点组成的集合也不会满足;不相邻的两个集合不满足,则这两个集合的合集肯定也不满足

    存在一个集合不满足,则这个集合定存在一个点不满足

     1 #grommaing hdoj 4940
     2 #include <iostream>
     3 #include <cstdio>
     4 #include <cstring>
     5 using namespace std;
     6 
     7 typedef long long ll;
     8 
     9 ll A[201],B[201];
    10 
    11 void init(){
    12     memset(A,0,sizeof(A));
    13     memset(B,0,sizeof(B));
    14 }
    15 
    16 int main()
    17 {
    18     int T;
    19     int n,m;
    20     int u,v,d,b;
    21     int cas=0;
    22     scanf("%d",&T);
    23     while(T--){
    24         init();
    25         bool flag= false;
    26         scanf("%d%d",&n,&m);
    27         for(int i=0;i<m;i++){
    28             scanf("%d%d%d%d",&u,&v,&d,&b);
    29             A[u] += d;  //出流和£A
    30             B[v] += d+b;  //入流和£B
    31         }
    32         for(int i=1;i<=n;i++)
    33             if(A[i]>B[i]){
    34                 flag = true;
    35                 break;
    36             }
    37         printf("Case #%d: ",++cas);
    38         if(!flag)
    39             printf("happy
    ");
    40         else
    41             printf("unhappy
    ");
    42     }
    43 
    44     return 0;
    45 }

      

    在一个谎言的国度,沉默就是英雄
  • 相关阅读:
    Codeforces 938G(cdq分治+可撤销并查集+线性基)
    codeforces 938F(dp+高维前缀和)
    寒武纪camp Day6
    寒武纪camp Day5
    寒武纪camp Day4
    bzoj4161 (k^2logn求线性递推式)
    loj10003加工生产调度
    loj10002喷水装置
    loj10001种树
    bzoj1023
  • 原文地址:https://www.cnblogs.com/EdsonLin/p/5307958.html
Copyright © 2011-2022 走看看