網路流24題 運輸問題(費用流)

2022-03-20 08:16:30 字數 978 閱讀 1137

cogs

大水題。。。

源點向倉庫連,容量為貨物量,費用為0

倉庫向商店連,容量inf,費用題目給出來了

商店向匯點連,容量為需求量,費用為0

簡直裸的費用流

#include#include#include#include#include#include#include#include#include#includeusing namespace std;

#define max 5000

#define maxl 500000

#define inf 1000000000

inline int read()

struct line

e[maxl];

bool vis[max];

int h[max],cnt=2;

int a[max],b[max],c[max][max];

inline void add(int u,int v,int w,int fy)

;h[u]=cnt++;

e[cnt]=(line);h[v]=cnt++;

}int pe[max],pr[max],dis[max];

int s,t,cost,n,m,flow,opt=1;

bool spfa()

}vis[u]=false;

}if(dis[t]>=inf)return false;

int flow=inf;

for(int i=t;i!=s;i=pr[i])flow=min(flow,e[pe[i]].w);

for(int i=t;i!=s;i=pr[i])e[pe[i]].w-=flow,e[pe[i]^1].w+=flow;

cost+=opt*flow*dis[t];

flow+=flow;

return true;

}int main()

網路流24題 運輸問題

題意 有m個倉庫,n個零售商店,兩兩之間有運送貨物的單位費用 對於給定的倉庫的儲存量和商店的需求量,計算最優運輸方案和最差運輸方案 題解 建圖 從源點s到每個倉庫連容量為貨物數的邊 從每個商店到匯點t連容量為貨物數的邊 倉庫與商店間兩兩連容量無限,費用為單位費用的邊 分別求出最小費用最大流和最大費用...

網路流24題 運輸問題

題目描述 description w 公司有m個倉庫和n 個零售商店。第i 個倉庫有ai 個單位的貨物 第j 個零售商店需要bj個單位的貨物。貨物供需平衡,即 sum si sum bj 從第i 個倉庫運送每單位貨物到第j 個零售商店的費用為cij 試設計乙個將倉庫中所有貨物運送到零售商店的運輸方案...

網路流24題 運輸問題

題目傳送門 最小費用最大流,最大費用最大流 源點與倉庫相連,流量為a i 費用0 匯點與商店相連,流量為b i 費用為0 倉庫與商店相連,流量無限,費用為c i j 最大費用最大流轉換成最小費用最大流,方法就是建圖的時候把費用變成相反數跑最小費用最大流,最後答案取相反數即可 include incl...