int dfs(int u,int augu){
int augv=0,v,delta,mind= n-1;
if(u==T)
return augu;
for(v=S;v<=T;v++)
if(cap[u][v]>0){
if(dist[u]==dist[v]+1){
delta=min(augu-augv,cap[u][v]);
delta=dfs(v,delta);
cap[u][v]-=delta;
cap[v][u]+=delta;
augv+=delta;
if(augv==augu)
return augv;
if(dist[S]>=n)
return augv;
}
mind=min(mind,dist[v]);
}
if(!augv){
vd[dist[u]]--;
if(!vd[dist[u]])
dist[S]=n;
dist[u]=mind+1;
vd[dist[u]]++;
}
return augv;
}
void sap(){
n=T+1;
vd[0]=n;
while(dist[S]<n)
flow+=dfs(S,INF);
}
最大流Sap模板
最新推荐文章于 2019-12-18 19:08:02 发布
本文探讨了深度学习在图像处理领域的应用,包括AR特效、图像处理、音视频直播等场景,详细介绍了相关技术原理及实践案例。
182

被折叠的 条评论
为什么被折叠?



