博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 3660 Floyd传递闭包
阅读量:5745 次
发布时间:2019-06-18

本文共 547 字,大约阅读时间需要 1 分钟。

题意:牛有强弱,给出一些牛的强弱的胜负关系,问可以确定几头牛的排名。

思路:
Floyd传递闭包

// by SiriusRen#include 
#include
using namespace std;#define f(x) for(int x=1;x<=n;x++)bitset<105>map[105];int n,m,jyx,jyy,ans=0;int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=m;i++)scanf("%d%d",&jyx,&jyy),map[jyx][jyy]=1; f(k)f(i)f(j)if(map[i][k]&map[k][j])map[i][j]=1; f(i){ int temp=0; f(j)if(i!=j&&map[i][j]|map[j][i])temp++; if(temp==n-1)ans++; } printf("%d",ans);}

这里写图片描述

转载于:https://www.cnblogs.com/SiriusRen/p/6532350.html

你可能感兴趣的文章