题目大意
n 只牛之间进行比赛, 给定 m 条关于两只牛之间的强弱信息, 求有多少只牛排名确定.
思路
若对于任意一只牛, 若知道比它排名高的牛有 x 只, 比它排名低的牛有 y 只, x + y == n - 1. 则可以知道这头牛的排名.
利用 Floyd-Warshall, 求出图中的传递闭包, 若一个点与其他所有点的关系已知, 则可以求解这个点的排名.
代码
|
|
勿在浮沙筑高台
n 只牛之间进行比赛, 给定 m 条关于两只牛之间的强弱信息, 求有多少只牛排名确定.
若对于任意一只牛, 若知道比它排名高的牛有 x 只, 比它排名低的牛有 y 只, x + y == n - 1. 则可以知道这头牛的排名.
利用 Floyd-Warshall, 求出图中的传递闭包, 若一个点与其他所有点的关系已知, 则可以求解这个点的排名.
|
|