傳送門
可以把原圖看做乙個二分圖,人在左邊,任務在右邊,求乙個帶權的最大和最小完美匹配
然而我並不會二分圖做法,所以只好直接用費用流套進去,求乙個最小費用最大流和最大費用最大流即可
1//minamoto
2 #include3 #include4 #include5 #include6
#define inf 0x3f3f3f3f
7using
namespace
std;
8#define getc() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?eof:*p1++)
9char buf[1
<<21],*p1=buf,*p2=buf;
10 inline int
read()
20const
int n=205,m=25005;21
int ver[m],next[m],head[n],edge[m],flow[m],tot=1;22
intdis[n],disf[n],n,s,t,ans,pre[n],last[n],vis[n],x;
23 queueq;
24 inline void add(int u,int v,int e,int
f)28
bool
spfa_min()42}
43}44return pre[t]!=-1;45
}46intdinic_min()56}
57return
mincost;58}
59bool
spfa_max()73}
74}75return pre[t]!=-1;76
}77intdinic_max()87}
88return
maxcost;89}
90int
main()
洛谷P4014 分配問題 費用流
有 nn 件工作要分配給 nn 個人做。第 ii 個人做第 jj 件工作產生的效益為 c cij 試設計乙個將 nn 件工作分配給 nn 個人做的分配方案,使產生的總效益最大。輸入格式 檔案的第 11 行有 11 個正整數 nn 表示有 nn 件工作要分配給 nn 個人做。接下來的 nn 行中,每行...
洛谷P4014 分配問題 最小 大費用流
題目描述 有 n 件工作要分配給 n 個人做。第 i 個人做第 j 件工作產生的效益為c ij。試設計乙個將 n 件工作分配給 n 個人做的分配方案,使產生的總效益最大。輸入格式 檔案的第 1 行有 1 個正整數 n,表示有 n 件工作要分配給 n 個人做。接下來的 n 行中,每行有 n 個整數c ...
洛谷 P4014 分配問題
有 nn 件工作要分配給 nn 個人做。第 ii 個人做第 jj 件工作產生的效益為 c cij 試設計乙個將 nn 件工作分配給 nn 個人做的分配方案,使產生的總效益最大。輸入格式 檔案的第 11 行有 11 個正整數 nn,表示有 nn 件工作要分配給 nn 個人做。接下來的 nn 行中,每行...