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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

hdu4411 经典费用里建图

發布時間:2025/6/17 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hdu4411 经典费用里建图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題意:
? ? ? 給以一個無向圖,0 - n,警察在0,他們有k個警隊,要派一些警隊去1--n個城市抓小偷,
問所有吧所有小偷全抓到然后在返回0的最小路徑和是多少,當地i個城市被攻擊的時候他會通知i-1城市,也就是說要么同時消滅他倆,要么消滅i-1在消滅i;


思路:
? ? ? 經典的費用流建圖 ,先來一遍floyd處理下圖 ,首先虛擬出來源點s ,終點t ,超級源點ss,

建圖:


? ? ? ?from ? ? ? to ? ? ? ? cost ? ? ? ? ? flow


? ? ? ? ss ? ? ? ? s ? ? ? ? ?0 ? ? ? ? ? ? ?k ? ? ?//限制最多k個警隊
? ? ? ? s ? ? ? ? ?i ? ? ? ? ? map[0][i] ? 1 ? ? // 出發去
? ? ? ? i ? ? ? ? i + n ? ? ? -INF ? ? ? ? ? 1 ? ? //-INF 是為了保證每一個都得跑
? ? ? ? i + n ? ? t ? ? ? ? ?map[0][i] ? ?1 ? ? // 回家
? ? ? ? i + n ? ? j ? ? ? ? ?map[i][j] ? ? 1 ? ? //i < j ,收拾完i再去城鎮j收拾j

? ? ? ? ? s ? ? ? ?t ? ? ? ? ? ? ? 0 ? ? ? ? ? ?1 ? ? //用這個邊處理沒有出動的警隊


#include<stdio.h> #include<string.h> #include<queue>#define N_node 210 #define N_edge 20000 #define INF 10000000 using namespace std;typedef struct {int from ,to ,cost ,flow ,next; }STAR;STAR E[N_edge]; int list[N_node] ,tot; int mer[N_edge]; int s_x[N_node]; int map[N_node][N_node];void add(int a, int b ,int c ,int d) {E[++tot].from = a;E[tot].to = b;E[tot].cost = c;E[tot].flow = d;E[tot].next = list[a];list[a] = tot;E[++tot].from = b;E[tot].to = a;E[tot].cost = -c;E[tot].flow = 0;E[tot].next = list[b];list[b] = tot; }bool SPFA(int s, int t ,int n) {int mark[N_node] = {0};for(int i = 0 ;i <= n ;i ++)s_x[i] = INF;mark[s] = 1 ,s_x[s] = 0;queue<int>q;q.push(s);memset(mer ,255 ,sizeof(mer));while(!q.empty()){int xin ,tou;tou = q.front();q.pop();mark[tou] = 0;for(int k = list[tou] ;k ;k = E[k].next){xin = E[k].to;if(s_x[xin] > s_x[tou] + E[k].cost && E[k].flow){s_x[xin] = s_x[tou] + E[k].cost;mer[xin] = k;if(!mark[xin]){mark[xin] = 1;q.push(xin);}}}}return mer[t] != -1; }int MCMF_SPFA(int s ,int t ,int n) {int maxflow = 0,minflow;int mincost = 0;while(SPFA(s ,t ,n)){minflow = INF;for(int i = mer[t] ;i + 1 ;i = mer[E[i].from]){if(minflow > E[i].flow)minflow = E[i].flow;}for(int i = mer[t] ;i + 1 ;i = mer[E[i].from]){E[i].flow -= minflow;E[i^1].flow += minflow;mincost += minflow * E[i].cost;}maxflow += minflow;}return mincost; }int minn(int x ,int y) {return x < y ? x : y; }void floyd(int n) {int i ,j ,k;for(k = 0 ;k <= n ;k ++)for(i = 0 ;i <= n ;i ++)for(j = 0 ;j <= n ;j ++)map[i][j] = minn(map[i][j] ,map[i][k] + map[k][j]); } int main () {int n ,m, i ,j ,K;int a ,b ,c;int ss ,s ,t;while(~scanf("%d %d %d" ,&n ,&m ,&K) && n + m + K){ss = 0 ,s = n + n + 1 ,t = n + n + 1 + 1;for(i = 0 ;i <= n ;i ++)for(j = 0 ;j <= n ;j ++){if(i == j) map[i][j] = 0;else map[i][j] = INF;}for(i = 1 ;i <= m ;i ++){scanf("%d %d %d" ,&a ,&b ,&c);map[a][b] = map[b][a] = minn(map[a][b] ,c);}floyd(n);memset(list ,0 ,sizeof(list));tot = 1;for(i = 1 ;i <= n ;i ++){add(s ,i ,map[0][i] ,1);add(i ,i + n ,-INF ,1);for(j = i + 1 ;j <= n ;j ++)add(i + n ,j ,map[i][j] ,1);add(i + n ,t ,map[i][0] ,1);}add(ss ,s ,0 ,K);add(s ,t ,0 ,K);int cost = MCMF_SPFA(ss ,t ,n + n + 1 + 1);printf("%d\n" ,cost + n * INF);}return 0; }

總結

以上是生活随笔為你收集整理的hdu4411 经典费用里建图的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 亚洲精品va | 日本肉体xxxⅹ裸体交 | 成人午夜在线 | 免费一级片 | 91精品91久久久中77777 | 欧美人体视频一区二区三区 | 日本中文在线 | 国产精品超碰 | 欧美老熟妇一区二区 | 国产婷婷色 | 成年在线观看 | 亚洲啊v| 精品国产av一区二区 | 丰腴饱满的极品熟妇 | 国产精品资源 | 久久久免费毛片 | 99国产精品免费 | 1级黄色大片 | 国产精品入口免费 | 亚洲青青草原 | 少妇三级 | 福利在线一区 | 国产美女精品人人做人人爽 | 欧美一区二区成人 | 国产美女主播在线 | 国产精品无码电影在线观看 | 樱花影院最新免费观看攻略 | 国产1区2区3区4区 | 在线视频黄| 国产在线观看成人 | 亚洲2022国产成人精品无码区 | 午夜免费影院 | 精品免费国产 | 十大污网站| 香蕉综合在线 | 日本亚洲一区二区三区 | 精品久久久久久久久久久久久久久久久 | 九九精品视频在线观看 | 欧美女优在线 | 欧美成人精精品一区二区频 | 午夜爽爽视频 | 欧美日韩另类在线 | 亚洲人xxx日本人18 | 免费中文av | 欧美巨鞭大战丰满少妇 | 激情亚洲| 桃色视频在线 | 国产98色在线 | 日韩 | 天天干夜夜爽 | 爱情岛论语亚洲入口 | 花样视频污 | 青草视屏 | xx久久| 日韩乱淫 | 在线播放无码后入内射少妇 | 国产又粗又猛又爽又黄的视频一 | 国产亚洲AV无码成人网站在线 | 国产中文字幕在线观看 | 深夜福利亚洲 | 韩日一级片 | 亚洲激情视频网站 | 欧美激情精品久久 | 久久无码人妻一区二区三区 | 午夜激情福利电影 | 成人一区二区三区视频 | 日本免费小视频 | 亚洲成人一 | 国产九九精品 | av第一页 | 欧美亚洲精品在线观看 | 日韩一区二区三区在线观看 | 国产精品黄视频 | 日韩欧美一区二区三区视频 | 亚洲国产av一区二区三区 | 欧美日韩亚洲不卡 | 中文字幕高清在线播放 | 无人码人妻一区二区三区免费 | 日日干夜 | 国产精品国产a级 | аⅴ资源新版在线天堂 | 性欧美丰满熟妇xxxx性久久久 | 日本成人在线播放 | 精品国产乱码久久久久久影片 | 性欧美日本 | 想要视频在线 | 波多野结衣高清视频 | 国产人妻互换一区二区 | 黄av在线播放 | 日韩成人精品一区二区 | 茄子视频A | 97超视频| 国产91一区二区三区 | 国产精品久久久无码一区 | 亚洲综合黄色 | 一级中文片 | 国产日韩欧美二区 | 国产酒店自拍 | 天天躁日日躁狠狠躁av麻豆 | www夜插内射视频网站 |