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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

[bzoj2055]80人环游世界[网络流,上下界网络流]

發布時間:2025/7/14 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [bzoj2055]80人环游世界[网络流,上下界网络流] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

手動畫了整張圖,,算是搞懂了吧,,

1 #include <bits/stdc++.h> 2 3 #define INF 0x3f3f3f3f 4 5 using namespace std; 6 7 template<const int _n,const int _m> 8 struct Edge 9 { 10 struct Edge_base { int to,next,w,c; }e[_m]; int cnt,p[_n]; 11 Edge() { clear(); } 12 void clear() { cnt=1,memset(p,0,sizeof(p)); } 13 void insert(const int x,const int y,const int z,const int zz) 14 { e[++cnt].to=y; e[cnt].next=p[x]; e[cnt].w=z; e[cnt].c=zz; p[x]=cnt; return ; } 15 void link(const int x,const int y,const int z,const int zz) 16 { insert(x,y,z,zz); insert(y,x,0,-zz); } 17 int start(const int x) { return p[x]; } 18 Edge_base& operator[](const int x) { return e[x]; } 19 }; 20 21 int n,m,Dis[210],Cost; 22 int cur[210],SSS,TTT,SS,TT; 23 bool visited[210]; 24 Edge<210,510000>e; 25 26 bool Spfa(const int S) 27 { 28 int i,t,temp; 29 queue<int> Q; 30 memset(Dis,0x3f,sizeof(Dis)); 31 Dis[S]=0; 32 visited[S]=true; 33 Q.push(S); 34 while(!Q.empty()) 35 { 36 t=Q.front(),Q.pop(); 37 visited[t]=false; 38 for(i=e.start(t);i;i=e[i].next) 39 { 40 temp=e[i].to; 41 if(e[i].w && Dis[t]+e[i].c<Dis[temp]) 42 { 43 Dis[temp]=Dis[t]+e[i].c; 44 if(!visited[temp]) 45 { 46 visited[temp]=true; 47 Q.push(temp); 48 } 49 } 50 } 51 } 52 return Dis[TTT]!=0x3f3f3f3f; 53 } 54 55 int Dfs(const int S,const int bk) 56 { 57 if(S==TTT)return bk; 58 visited[S]=true; 59 int rest=bk; 60 for(int &i=cur[S];i;i=e[i].next) 61 { 62 if(!visited[e[i].to] && Dis[S]+e[i].c==Dis[e[i].to] && e[i].w) 63 { 64 int flow=Dfs(e[i].to,min(rest,e[i].w)); 65 Cost+=flow*e[i].c; 66 e[i].w-=flow; 67 e[i^1].w+=flow; 68 if((rest-=flow)<=0)break; 69 } 70 } 71 if(bk==rest)Dis[S]=0x3f3f3f3f; 72 visited[S]=false; 73 return bk-rest; 74 } 75 76 int Zkw() 77 { 78 int Flow=0; 79 while(Spfa(SSS)) 80 { 81 memcpy(cur,e.p,sizeof(cur)); 82 Flow+=Dfs(SSS,0x3f3f3f3f); 83 } 84 return Cost; 85 } 86 87 int main() 88 { 89 int i,j,a,x; 90 91 scanf("%d%d",&n,&m); 92 93 SS=n<<1|1,TT=SS+1,SSS=TT+1,TTT=SSS+1; 94 for(i=1;i<=n;++i) 95 { 96 scanf("%d",&a); 97 e.link(SSS,i+n,a,0); 98 e.link(i,TTT,a,0); 99 e.link(i+n,TT,INF,0); 100 e.link(SS,i,INF,0); 101 } 102 103 for(i=1;i<=n;++i)for(j=i+1;j<=n;++j) 104 { 105 scanf("%d",&x); 106 if(x==-1)continue; 107 e.link(i+n,j,INF,x); 108 } 109 110 e.link(TT,SS,m,0); 111 112 printf("%d\n",Zkw()); 113 return 0; 114 }

?

轉載于:https://www.cnblogs.com/Gster/p/5090535.html

總結

以上是生活随笔為你收集整理的[bzoj2055]80人环游世界[网络流,上下界网络流]的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 男女爽爽 | 国产在线观看中文字幕 | 波多野结衣理论片 | 久久久久久久久影院 | 中文字幕777 | 欧美激情视频一区 | 欧美性生交大片免费看 | 91呦呦 | 91猎奇在线观看 | 99精品小视频 | 亚洲一区二区蜜桃 | 日韩视频在线视频 | 在线国产精品视频 | 色综合天| 久久一区二区电影 | 中文字幕日韩三级 | 67194在线免费观看 | 99re99| 在线观看av黄色 | 中文字幕免费高清视频 | 久久r这里只有精品 | 波多野结衣亚洲一区二区 | 一区二区三区免费播放 | 在线观看精品国产 | 日韩一级大片 | 伊人88| 成人欧美一区二区三区白人 | 人人干超碰 | 夜夜福利| 三级网站在线免费观看 | 中文字幕一区二区人妻 | 久久涩涩| 一级片在线免费观看视频 | 免费人成在线观看 | 国产成人在线一区 | 久久天堂电影 | 欧美最猛黑人xxxx | 国产一区二区 | 99久久精品免费看国产免费软件 | 黑丝美女av | 波多野结衣亚洲天堂 | 在线看b | 国产美女流白浆 | 亚洲人人在线 | 欧美精品成人一区二区三区四区 | 人妻无码中文久久久久专区 | 精品无码人妻一区 | 夫妻黄色片 | 97国产成人无码精品久久久 | 毛片在线看片 | 伊人情人综合网 | 夜夜爽妓女8888视频免费观看 | 国产一区视频免费观看 | 福利视频黄色 | 日韩色图在线观看 | 日韩精品一二三四 | 白峰美羽在线播放 | 精品96久久久久久中文字幕无 | jjzz日本视频 | 日韩欧美国产网站 | 亚洲AV不卡无码一区二区三区 | 国产 日韩 欧美 制服丝袜 | 伊人久久免费视频 | 免费观看黄色网页 | 亚洲性图av | 激情综合视频 | 久久精品资源 | 嫩草一区二区 | 五月天激情视频在线观看 | 国产精品国产三级国产aⅴ中文 | 色妞干网| 国产色综合网 | 中文字幕在线播放视频 | julia在线播放88mav | 一二三区不卡 | av国产免费 | 欧美在线播放一区二区 | 精品无人国产偷自产在线 | 98国产精品 | 公车乳尖揉捏酥软呻吟 | 午夜视频在线免费看 | 四虎网址在线 | 天天躁日日躁狠狠躁 | 国产免费黄网站 | 日本激情视频在线 | 亚洲成人av | 亚洲欧美偷拍视频 | 春色av| 日韩成人av片 | 2022精品国偷自产免费观看 | 一区二区三区日 | 美女黄色免费网站 | 久久免费国产精品 | 美女网站黄频 | 亚洲午夜伦理 | 蜜桃精品久久久久久久免费影院 | 国产激情在线 | 中国一级免费毛片 | av丝袜天堂|