題目鏈結
題目大意:拓撲排序,要求靠前的出現的盡量早,以此類推
注意不是字典序最小,例如<3,1>、<4,1>,答案為 3,4,1,2
而字典序最小的拓撲排序為 2,3,4,1
題解:建反圖,按字典序從大到小拓撲排序,這樣在排i時能在i之前排序的已經排完了,是最優的,這個和noi2010 plane 航空管制是一樣的
我的收穫:這樣的情況建反圖似乎是套路……
#include
#include
#include
#include
#include
using
namespace
std;
const
int m=100005;
int t,n,m,t,head[m];
int in[m],ans[m];
priority_queue q;
struct edgee[m<<1];
void add(int u,int v);head[u]=t++;}
void work()
}if(cntputs("impossible!");return ;}
for(int i=n;i>=1;i--) printf("%d ",ans[i]);
putchar('\n');}
void init()
int main()
4010 HNOI2015 菜餚製作
time limit 5 sec memory limit 512 mb submit 1452 solved 709 submit status discuss 知名美食家小 a被邀請至atm 大酒店,為其品評菜餚。atm 酒店為小 a 準備了 n 道菜餚,酒店按照為菜餚預估的質量從高到低給予 1...
HNOI2015 BZOJ4010 菜餚製作
description 知名美食家小 a被邀請至atm 大酒店,為其品評菜餚。atm 酒店為小 a 準備了 n 道菜餚,酒店按照為菜餚預估的質量從高到低給予 1到n的順序編號,預估質量最高的菜餚編號為1。由於菜餚之間口味搭配的問題,某些菜餚必須在另一些菜餚之前製作,具體的,一共有 m 條形如 i 號...
bzoj4010 HNOI2015 菜餚製作
題目鏈結 題意 給出一張無向圖要求出乙個拓撲序列滿足1的位置最靠前 在保證上面的條件下使2的位置最靠前 在保證上面的條件下使3的位置最靠前 solution 構造逆拓撲序,套個堆每次選出編號最大的加入答案,輸出答案時從後往前輸出。有點難想,但是腦補一下還是ok的。bzoj4010 include i...