日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

bzoj 2109: [Noi2010]Plane 航空管制

發布時間:2025/5/22 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 bzoj 2109: [Noi2010]Plane 航空管制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

世博期間,上海的航空客運量大大超過了平時,隨之而來的航空管制也頻頻 發生。最近,小X就因為航空管制,連續兩次在機場被延誤超過了兩小時。對此, 小X表示很不滿意。 在這次來煙臺的路上,小 X不幸又一次碰上了航空管制。于是小 X開始思考 關于航空管制的問題。 假設目前被延誤航班共有 n個,編號為 1至n。機場只有一條起飛跑道,所 有的航班需按某個順序依次起飛(稱這個順序為起飛序列)。定義一個航班的起 飛序號為該航班在起飛序列中的位置,即是第幾個起飛的航班。 起飛序列還存在兩類限制條件: ? 第一類(最晚起飛時間限制):編號為 i的航班起飛序號不得超過 ki; ? 第二類(相對起飛順序限制):存在一些相對起飛順序限制(a, b),表示 航班 a的起飛時間必須早于航班 b,即航班 a的起飛序號必須小于航班 b 的起飛序號。 小X 思考的第一個問題是,若給定以上兩類限制條件,是否可以計算出一個 可行的起飛序列。第二個問題則是,在考慮兩類限制條件的情況下,如何求出每 個航班在所有可行的起飛序列中的最小起飛序號。

solution

第一問是菜肴制作,建反圖貪心即可.
第二問我們單獨考慮每個飛機,我們強行不管這個飛機,按第一問的做法,拓撲排序,直到隊列空或者出現不能編號的情況為止,這個時候編號能夠比它大的能處理好了,那么這架飛機就只能是這個編號了.

#include <algorithm> #include <iostream> #include <cstdlib> #include <cstring> #include <cstdio> #include <queue> #include <cmath> #define RG register #define il inline #define iter iterator #define Max(a,b) ((a)>(b)?(a):(b)) #define Min(a,b) ((a)<(b)?(a):(b)) using namespace std; const int N=2005,M=10005; int n,m,a[N],num=0,head[N],to[M],nxt[M],du[N],in[N],ret[N]; void link(int x,int y){nxt[++num]=head[x];to[num]=y;head[x]=num;} struct node{int x,v;bool operator <(const node &pr)const{return v<pr.v;} }; priority_queue<node>q; void solve1(){for(int i=1;i<=n;i++){in[i]=du[i];if(!in[i])q.push((node){i,a[i]});}int x,cnt=n;while(!q.empty()){x=q.top().x;q.pop();ret[cnt--]=x;for(int i=head[x];i;i=nxt[i]){int u=to[i];in[u]--;if(!in[u])q.push((node){u,a[u]});}}for(int i=1;i<=n;i++)printf("%d ",ret[i]);puts(""); } inline int solve2(int li){while(!q.empty())q.pop();for(int i=1;i<=n;i++){if(i==li)in[i]=-1;else {in[i]=du[i];if(!in[i])q.push((node){i,a[i]});}}for(int k=n;k>=1;k--){if(q.empty())return k;int x=q.top().x;q.pop();if(k>a[x])return k;for(int i=head[x];i;i=nxt[i]){int u=to[i];in[u]--;if(!in[u])q.push((node){u,a[u]});}}return 1; } void work() {int x,y;scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)scanf("%d",&a[i]);for(int i=1;i<=m;i++){scanf("%d%d",&x,&y);link(y,x);du[x]++;}solve1();for(int i=1;i<=n;i++)printf("%d ",solve2(i)); }int main() {work();return 0; }

轉載于:https://www.cnblogs.com/Yuzao/p/8042563.html

總結

以上是生活随笔為你收集整理的bzoj 2109: [Noi2010]Plane 航空管制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线观看羞羞漫画 | 久久99国产精品久久99果冻传媒 | 久久毛片网 | 国产色播 | 你懂的网站在线观看 | 好吊色这里只有精品 | 亚洲性影院 | 中文字幕在线视频不卡 | 午夜成人免费视频 | 中文字幕3 | 国产91精品看黄网站在线观看 | 亚洲一区二区色图 | 日韩 欧美 中文 | 我和公激情中文字幕 | 一级成人免费 | 久久55 | 日本精品久久久久久 | 被扒开腿一边憋尿一边惩罚 | 合欢视频污 | 成a人片亚洲日本久久 | 捆绑无遮挡打光屁股调教女仆 | 免费看欧美成人a片无码 | 国产 日韩 欧美 精品 | 人人澡人人澡人人澡 | 第一福利视频 | 中文字幕亚洲天堂 | 久月婷婷 | 亚洲欧洲精品一区二区 | 金瓶风月在线 | 黄色网免费观看 | 精品国产一区二区三区性色av | 艳妇臀荡乳欲伦交换gif | 99re这里都是精品 | 国产欧美三级 | 亚洲图片小说视频 | 黑人巨大精品欧美一区二区 | 午夜xxxx| 一区二区视频在线免费观看 | 一区二区视频在线 | 黄色网址进入 | 免费看污片网站 | 美女作爱网站 | 免费麻豆 | 精品少妇人妻一区二区黑料社区 | 两性午夜免费视频 | 日韩少妇高潮抽搐 | 亚洲图色在线 | 日韩免费视频 | 中文毛片 | 欧美30p| 中文字幕不卡在线 | 自拍偷拍第二页 | 91亚色视频 | 日韩激情小视频 | 性欧美精品中出 | 美女隐私免费看 | jizz日本大全 | 人人干人人搞 | 美女在线不卡 | 男生操女生逼逼 | 国产福利视频导航 | 九七在线视频 | 超碰免费91 | 天堂av免费观看 | 国产91片 | 国产一级影片 | 免费激情 | 黄色视屏软件 | 露出调教羞耻91九色 | 超碰美女| 99这里有精品视频 | 天天干,天天干 | 国家队动漫免费观看在线观看晨光 | 欧美一区二区在线观看 | 午夜精品久久久久久久蜜桃 | 国产精品精品软件视频 | 欧美精品一级在线观看 | a黄色大片| 动漫精品一区二区三区 | 国产精品人人做人人爽 | 老妇裸体性激交老太视频 | 久久久黄色大片 | 欧美熟妇精品黑人巨大一二三区 | 韩国精品在线观看 | 日韩欧美一区二区一幕 | 国产情侣自拍小视频 | 特级西西人体wwwww | 91片黄在线观看 | 日本视频精品 | 亚洲精品白浆 | 久久久免费观看视频 | 午夜精品国产 | 国产aⅴ一区二区三区 | 中文字幕人妻一区二 | 国产又粗又长又爽 | 欧美日韩亚洲另类 | 加勒比精品 | 尤物av无码色av无码 | 国产美女www爽爽爽 www.国产毛片 |