4010 HNOI2015 菜餚製作

2021-08-07 22:12:47 字數 741 閱讀 2030

題目鏈結

題目大意:拓撲排序,要求靠前的出現的盡量早,以此類推

注意不是字典序最小,例如<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...