大意: n个点, 点$i$的等级为$r_i$, 只给出部分点的$r$值, $r_i$的范围为[1,k], 且[1,k]都至少有一个. 给定m条有向边, (x,y)表示$r[x]>r[y]$, 求一个合法的$r$序列.
正反各拓扑一次, 这样每个剩余点都可以求出一个可用等级范围, 对于一个可用范围为$[L,R]$的点, 贪心分配
Berland Army CodeForces - 883B (贪心,拓扑排序)
原文:https://www.cnblogs.com/uid001/p/10806019.html