初見安~這裡是傳送門:洛谷p4015 運輸問題
因為貨物的初始量和變化後的量都是確定的,所以這個是最大/最小費用流。
其實直接按題目意思建圖就可以了。從s連向每個a倉庫表示分配貨物,從每個b連向t表示限制b商店需要的貨物數量。a和b之間就按照題意連費用流的邊即可。
對於這個題的兩個文我們當然可以寫兩個spfa,乙個跑最大費用流,乙個跑最小費用流。但是其實對於最大費用流,我們可以把邊權全部取相反數然後跑最小費用流,再將結果取相反數。這樣的話可以方便很多。【可能是我自己的問題,我把求最小費用流的時候的邊權取相反數然後扔最大流跑就出不來了qaq】
上**——
#include#include#include#include#include#include#define maxn 500
#define maxm 200005
using namespace std;
typedef long long ll;
const int inf = 0x3f3f3f3f;
int read()
while(isdigit(ch)) x = (x << 1) + (x << 3) + ch - '0', ch = getchar();
return x * f;
}struct edge e[maxm], e2[maxm];
int head[maxn], k = 0;
void add(int u, int v, int w, int f) ; head[u] = k++;
e[k] = ; head[v] = k++;
} int s, t;
int dis[maxn], pre[maxn], incf[maxn];
bool vis[maxn];
bool spfa()
} }if(dis[t] == inf) return false; return true;
}ll ans = 0;
void update()
ans += 1ll * incf[t] * dis[t];
}int n, m, a[maxn], b[maxn];
signed main()
迎評:)
——end——
網路流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...