题解-爱数数
建立一个虚拟偶像点比所有人强。建边 \(u\to v\) 代表 \(u\) 比 \(v\) 弱。
然后我们建立一个最长路径树,用拓扑排序实现。
这棵树有以下性质:
-
同一深度的所有点肯定不能确定排名,因为如果可以确定排名,那么两点间一定有非树边。此时非树边才应该在最长路径树里面,矛盾。
由此推出,可以确定排名的人的深度是唯一的。
再推出,可以确定排名的人组成一条链。
-
浅点不会有一条非树边连向深点,若如此,此时非树边才应该在最长路径树里面。
所以我们现在需要找到一条链,最浅节点与以下节点有非树边:它的父节点和其余叶子节点(链上的叶子节点不算)。
暴力跑就行了,复杂度 \(O(m)\)。