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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

[网络流24题-7]圆桌问题

發布時間:2025/7/25 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [网络流24题-7]圆桌问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

圓桌問題

就是比較裸的一個網絡流qwq

直接建源點匯點

源點連單位流量Ci 桌子連匯點流量Ri 單位桌子兩兩連邊流量為1限流就可以了

然后輸出方案就看一下流了這條邊就是坐了這個桌子就吼了

#include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<queue> #define inf 20021225 #define maxn 100100 using namespace std;struct edge{int to,lt,f;}e[maxn<<4]; int in[maxn],nn,cnt=1,s,t,dep[maxn]; queue<int> que; void add(int x,int y,int f) {e[++cnt].to=y;e[cnt].lt=in[x];in[x]=cnt;e[cnt].f=f;e[++cnt].to=x;e[cnt].lt=in[y];in[y]=cnt;e[cnt].f=0; } bool bfs() {memset(dep,0,sizeof(dep));while(!que.empty()) que.pop();dep[s]=1;que.push(s);while(!que.empty()){//printf("QAQ");int x=que.front();que.pop();for(int i=in[x];i;i=e[i].lt){int y=e[i].to;if(e[i].f&&!dep[y]){dep[y]=dep[x]+1;if(y==t) return 1;que.push(y);}}}return dep[t]!=0; } int dfs(int x,int f) {//printf("QAQ");if(x==t||!f) return f;int cur=f;//printf("QAQ");for(int i=in[x];i;i=e[i].lt){int y=e[i].to;if(dep[y]==dep[x]+1&&e[i].f){int tmp=dfs(y,min(e[i].f,cur));//if(!tmp) dep[y]=-1;e[i].f-=tmp;e[i^1].f+=tmp;cur-=tmp;if(!cur) break;}}dep[x]=-1;return f-cur; } int c[300],r[300]; int dinic() {int ans=0,w;while(bfs()){//while(w=dfs(s,inf))//{ ans+=dfs(s,inf);//printf("%d\n",w);//}}//printf("%d ",ans);return ans; } int main() {int n,m,i,j,tot=0;scanf("%d%d",&m,&n);s=n+m+1;t=n+m+2;//nn=n+m+2;for(i=1;i<=m;i++){scanf("%d",&r[i]);add(s,i,r[i]);tot+=r[i];}for(i=1;i<=n;i++){scanf("%d",&c[i]);add(i+m,t,c[i]);for(j=1;j<=m;j++)add(j,i+m,1);}if(dinic()==tot){printf("1\n");for(i=1;i<=m;i++){for(int j=in[i];j;j=e[j].lt){if(e[j].to==s) continue;if(!e[j].f) printf("%d ",e[j].to-m);}printf("\n");}}else printf("0\n");return 0; }

?

轉載于:https://www.cnblogs.com/hanyuweining/p/10321958.html

總結

以上是生活随笔為你收集整理的[网络流24题-7]圆桌问题的全部內容,希望文章能夠幫你解決所遇到的問題。

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