#反向建边 #拓扑排序 题意 有n个菜,m个条件约束条件(a,b),表a必须在b之前 除了约束条件外,要保证序号小的的尽可能先做 在满足所有限制的前提下,1 号菜肴”尽量“优先制作; 在满足所有限制,1号菜肴”尽量“优先制作的前提下,2号菜肴”尽量“优先制作; 以此类推。 例:共4 道菜肴,两条限制<3,1>、<4,1>,那么制作顺序是 3,4,1,2。 思路 正向描述这个拓扑序不好描述,因为每做一个菜都可能影响当前的“最优先做的菜” 考虑反向描述 先做序号最小的->最后做序号最大的 通过反向建边,变为在拓扑序中寻找字典序最大的 代码 #include&l...