題意:
題解:抑鬱,機房的「學長」上課吵死了,心煩意亂的寫了這個題,一直wa,最後發現忘了特判,網路流出現負權邊了。。。
明確思想,1這個人剩下的比賽都贏(包括和組外的人比的比賽,簡稱組外賽),與1同小組的其他人,組外賽全輸,小組內部的比賽就是網路流需要分配的結果~
思路見:
view code
1 #include 2 #include 3 #include 4 #include 5 #include 6吐槽:sgu簡直太不人性了,登陸要記住id,做一道題需要開三個頁面:題目頁面,提交頁面,評測頁面。。。7#define n 1000
8#define m 400000
9#define inf 1e9
1011
using
namespace
std;
1213
inthead[n],to[m],next[m],len[m];
14int
q[m],layer[n],num[n][n],a[n],b[n],sum,qsum,mx,sb[n],map[n][n];
15int
n,s,t,cnt,cas;
1617 inline void add(int u,int v,int
w)18
2223 inline void
read()
2442
}43 t=tot+n+1;44
for(int i=2;i<=n;i++)
45for(int j=i+1;j<=n;j++)
4650
for(int i=2;i<=n;i++) add(i+tot,t,a[1]-a[i]);51}
5253 inline bool
bfs()
5467}68
return layer[t]!=-1;69
}7071 inline int find(int u,int
cur_flow)
7281
if(!res) layer[u]=-1;82
return
res;83}
8485 inline void
go()
8689
int ans=0;90
while(bfs()) ans+=find(s,inf);
91if(ans>=sum) puts("
yes"
);92
else puts("no"
);93}94
95int
main()
96
sgu 185 最短路 最大流
題意 求兩條不公邊的最短路,存在則輸出兩條路徑,不存在則輸出no solution 經過無數的re 22,wa 20和mel終於用最短路 最大流給a啦,感謝蒼天的解救啊!剛開始用的費用流解決 建圖源點到1建一條容量為2,費用為0的邊,n到匯點連一條容量為2,費用為0的邊,原圖中的邊 u,v 容量為1...
最大流問題
暫時最大流問題我就先掌握這一種演算法吧 基本的最大流問題 ek演算法 基於bfs 每一次bfs更新一條路徑,雖然都會入佇列,但是由於以下條件保證點不會交叉,所以只有一條到終點的路徑會更新流量。if res v map u v flow u v 注意更新flow矩陣的時候是這樣的 while u st...
最大流問題
具體的最大流問題定義 術語以及特性,前人已經描述的很詳細了 我們需要注意以及幾個方面 增益路徑的生成次序如果不恰當,會對方法的效率有巨大的影響。如下 其中u代表某個大正整數。如果沿著路徑1 2 3 4對流量0進行增益,得到 b 中值為1的流量 接著沿著路徑1 3 2 4對流量0進行增益,得到 c 中...