Luogu 3381(最小費用流)

2021-08-10 10:34:10 字數 735 閱讀 7862

傳送門

模板題。最小費用最大流,要求同時輸出最大流以及最小費用,複雜度有點玄學,每增廣一次,下一次spfa的複雜度又會降低。所以這種題暫時只能這麼處理:看出來有後效性的相互約束關係的就考慮用費用流解決。

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

const int n=5004,m=50004,inf=0x3f3f3f3f;

int n,m,source,sink;

int head[n],etot=0,dis[n],pre[n];

bool inq[n];

struct edge e[m<<1];

inline int read()

inline void adde(int u,int v,int r,int c)

inline bool spfa()

} }return dis[sink]^inf;

}inline void mcmf()

printf("%d %d\n",maxflow,mincost);

}int main() {

// freopen("p3381.in","r",stdin);

memset(head,-1,sizeof(head));

n=read(),m=read(),source=read(),sink=read();

for (register int i=0;i

最小費用流

include include define maxn 61 define maxv maxn maxn 2 1 define maxe maxv 5 define oo 2147483647 define min a,b a b b a define maxq maxe using namespa...

最小費用流

int v 頂點數 vector g max v int dist max v 最短距離 int prev max v 最短路中前驅結點對應的點 int pree max v 最短路中前驅結點對應的邊 void addedge int from,int to,int cap,int cost 求從s...

最小費用流

acm模版 最小費用流 o v e f init network g g.build v,e call g.mincost s,t flow g.flow cost g.cost 注意 spfa增廣,實際複雜度遠遠小於o v e define typef int type of flow defin...