• P2419 [USACO08JAN]Cow Contest S


    传递闭包裸题。

    如果一头奶牛和其他(n-1)头奶牛的大小关系都确定了,那么该奶牛的排名可唯一确定。

    或者说,比它强的奶牛的数量加上比它弱的奶牛的数量等于(n-1),就可唯一确定该奶牛的名次。

    const int N=110;
    bool g[N][N];
    int n,m;
    
    void floyd()
    {
        for(int k=1;k<=n;k++)
            for(int i=1;i<=n;i++)
                for(int j=1;j<=n;j++)
                    g[i][j] |= g[i][k] & g[k][j];
    }
    
    int main()
    {
        cin>>n>>m;
    
        while(m--)
        {
            int a,b;
            cin>>a>>b;
            g[a][b]=true;
        }
    
        floyd();
    
        int res=0;
        for(int i=1;i<=n;i++)
        {
            int cnt=0;
            for(int j=1;j<=n;j++)
                if(g[i][j] || g[j][i])
                    cnt++;
            if(cnt == n-1) res++;
        }
        cout<<res<<endl;
        //system("pause");
        return 0;
    }
    
    
  • 相关阅读:
    opendressinghash //use resize array
    ChainingHash
    Hash function
    stack && queue
    random_select
    counting sort
    master theorem
    各排序算法及其比较
    视图中添加主键的方法
    oracle表空间的扩展
  • 原文地址:https://www.cnblogs.com/fxh0707/p/14671138.html
Copyright © 2020-2023  润新知