zoukankan      html  css  js  c++  java
  • pku3660 Cow Contest

    http://poj.org/problem?id=3660

    图论,最短路,floyd

     1 #include <stdio.h>
     2 #define N 123
     3 
     4 const int inf = 1<<29;
     5 int n, g[N][N];
     6 
     7 int min(int x, int y)
     8 {
     9     return x<y? x: y;
    10 }
    11 
    12 void floyd()
    13 {
    14     for(int k=1; k<=n; k++)
    15     {
    16         for(int i=1; i<=n; i++)
    17         {
    18             for(int j=1; j<=n; j++)
    19             {
    20                 g[i][j] = min(g[i][j], g[i][k]+g[k][j]);
    21             }
    22         }
    23     }
    24 }
    25 
    26 int main()
    27 {
    28     int m, r, i, j, x, y, flag;
    29     scanf("%d%d", &n, &m);
    30     for(i=1; i<=n; i++)
    31     {
    32         for(j=1; j<=n; j++)
    33         {
    34             g[i][j] = inf;
    35         }
    36     }
    37     for(i=1; i<=m; i++)
    38     {
    39         scanf("%d%d", &x, &y);
    40         g[x][y] = 1;
    41     }
    42     floyd();
    43     r = 0;
    44     for(i=1; i<=n; i++)
    45     {
    46         flag = 0;
    47         for(j=1; j<=n; j++)
    48         {
    49             if(j != i)
    50             {
    51                 if(g[i][j] == inf && g[j][i] == inf)
    52                 {
    53                     flag = 1;
    54                     break;
    55                 }
    56             }
    57         }
    58         if(flag == 0)
    59         {
    60             //printf("%d\n", i);
    61             r ++;
    62         }
    63     }
    64     printf("%d\n", r);
    65     return 0;
    66 }
  • 相关阅读:
    作业练习
    作业练习
    作业
    作业
    作业
    作业
    作业
    作业
    作业
    作业
  • 原文地址:https://www.cnblogs.com/yuan1991/p/pku3660.html
Copyright © 2011-2022 走看看