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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

poj 2455 Secret Milking Machine(二分枚举+最大流)

發布時間:2025/3/16 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 poj 2455 Secret Milking Machine(二分枚举+最大流) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題意:

題意:FJ有N塊地,這些地之間有P條雙向路,每條路的都有固定的長度l。現在要你找出從第1塊地到第n塊地的T條不同路徑,每條路徑上的路不能與先前的路徑重復,問這些路徑中的最長路的最小是多少。

?

思路:二分答案+網絡流判定。
二分枚舉最大邊權,重新建圖,只保存權不超過最大邊權的邊。即如果邊的長度小于等于我們規定的最大邊權 則添加這條邊 權值為1, 否則標記為0??

然后在網絡中起點終點間的容量是原圖中的路徑數,判斷最大流是否>=T

這里要注意的是,本題給的雙向邊,所以在添加反向弧時,容量應該等于正向弧。

#include<iostream> #include<cstdio> #include<cstring> #include<queue> using namespace std;const int maxn = 205; const int INF = 0x3f3f3f3f; struct Edge {int from,to,next,w; }edge[2*maxn*maxn],E[maxn*maxn]; int n,m,cnt,head[maxn]; int level[maxn];void addedge(int u,int v,int w) {edge[cnt].to = v;edge[cnt].w = w;edge[cnt].next = head[u];head[u] = cnt++;swap(u,v);edge[cnt].to = v;edge[cnt].w = w;edge[cnt].next = head[u];head[u] = cnt++; }void build(int limit) {cnt = 0;memset(head,-1,sizeof(head));for(int i = 1; i <= m; i++)if(E[i].w <= limit)addedge(E[i].from,E[i].to,1); }int BFS(int src,int des){queue<int> q;memset(level,0,sizeof(level));level[src]=1;q.push(src);while(!q.empty()){int u = q.front();q.pop();if(u==des) return 1;for(int k = head[u];k!=-1;k=edge[k].next){int v = edge[k].to,w=edge[k].w;if(level[v]==0&&w!=0){level[v]=level[u]+1;q.push(v);}}}return -1; } int dfs(int u,int des,int increaseRoad){if(u==des) return increaseRoad;int ret=0;for(int k=head[u];k!=-1;k=edge[k].next){int v = edge[k].to, w = edge[k].w;if(level[v] == level[u] + 1 && w != 0){int MIN = min(increaseRoad-ret,w);w = dfs(v,des,MIN);if(w > 0){edge[k].w -=w;edge[k^1].w+=w;ret+=w;if(ret==increaseRoad) return ret;}else level[v] = -1; }}return ret; } int Dinic(int src,int des){int ans = 0;while(BFS(src,des)!=-1) ans+=dfs(src,des,INF);return ans; }int main() {int t;while(scanf("%d%d%d",&n,&m,&t)!=EOF){for(int i = 1; i <= m; i++)scanf("%d%d%d",&E[i].from,&E[i].to,&E[i].w);int l = 1, r = 1000000, mid,ans;while(l <= r){mid = (l + r) >> 1;build(mid);int tmp = Dinic(1,n);if(tmp >= t){ans = mid;r = mid - 1;}else l = mid + 1;}printf("%d\n",ans);}return 0; }


總結

以上是生活随笔為你收集整理的poj 2455 Secret Milking Machine(二分枚举+最大流)的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 久久人人爽人人爽人人片 | 精品一区二区三区无码视频 | 337p亚洲欧洲色噜噜噜 | 日韩欧美在线中文字幕 | 美女扒逼 | 最近2019中文字幕大全第二页 | av老司机在线播放 | 精品视频一二 | 娇妻玩4p被三个男人伺候电影 | 久久久久99精品成人片试看 | 秋霞福利片 | www.第四色 | 91高清在线视频 | 影音先锋色小姐 | 视频一区日韩 | 欧美激情在线观看视频 | 男女调教视频 | 波多野结衣先锋影音 | www久久久com | 草草视频在线播放 | 一区二区三区在线播放 | 黄色三极片 | 男人午夜视频 | 暖暖视频日本 | 日本免费网站视频 | 久久久久久91香蕉国产 | 中国av一区二区三区 | 免费看一级黄色片 | 午夜综合 | 性欧美大战久久久久久久 | 黄色av小说在线观看 | 91超级碰 | 久久国产成人 | 91欧美日韩麻豆精品 | 日韩av网站在线观看 | 日产电影一区二区三区 | 第色 | 午夜电影福利网 | 国产 欧美 日韩 | 丁香综合网 | 好男人在线观看 | 蜜桃无码一区二区三区 | 1000亚洲裸体人体 | 国产精品96久久久久久 | 精品国产乱码一区二区 | 91久久精品日日躁夜夜躁欧美 | 久艹在线观看 | 国产精伦| 日韩成人高清在线 | 女人舌吻男人茎视频 | 国产黄色免费 | 亚洲视频一二 | 男女无遮挡免费视频 | 神马影院一区二区三区 | 免费插插视频 | 免费视频毛片 | 丰满人妻在公车被猛烈进入电影 | 中字幕一区二区三区乱码 | 高清久久久 | 自拍三区 | 欧美日韩精品久久久 | 欧美日韩国产精品综合 | a黄色大片 | 亚洲精品视频观看 | 亚洲奶汁xxxx哺乳期 | 大陆日韩欧美 | 日韩一区欧美二区 | 久久激情网| 男女无遮挡做爰猛烈视频 | 亚洲男人在线 | 他揉捏她两乳不停呻吟动态图 | 日本视频黄色 | 69av在线播放 | 91极品美女| 蜜桃91麻豆精品一二三区 | 久久久久麻豆v国产精华液好用吗 | 亚洲AV无码精品久久一区二区 | 亚州精品视频 | 亚洲区在线播放 | 午夜日韩 | 天天干天天舔 | 特大巨交吊性xxxx | 国产综合久久久 | youjizz欧美| 手机看片日韩 | 免费看欧美一级特黄a大片 国产免费的av | 成人免费视频网站 | 精品人妻一区二 | 果冻传媒18禁免费视频 | 日韩经典三级 | 一级大片儿 | 免费www xxx| 免费成人美女女 | 免费av软件 | 男女啪啪在线观看 | 国产一区中文 | 欧美熟妇久久久久 | 91官网视频 | 超碰在线免费 |