hdu3549 最大流
2024-10-08 01:29:47
#include<stdio.h>
#include<string.h>
#include<queue>
#define MAXN 1010
using namespace std;
int map[MAXN][MAXN],n,dis[MAXN];
int min(int x,int y)
{return x<y?x:y;}
int bfs()
{
int i,j;
queue<int>q;
memset(dis,-,sizeof(dis));
dis[]=;
q.push();
while(!q.empty())
{
int t=q.front();
q.pop();
for(i=;i<=n;i++)
{
if(map[t][i]&&dis[i]<)
{
dis[i]=dis[t]+;
q.push(i);
}
}
}
if(dis[n]>)
return ;
return ;
}
int dfs(int u,int low)
{
int i,j,a;
if(u==n)
return low;
for(i=;i<=n;i++)
{
if(map[u][i]&&dis[i]==dis[u]+)
{
a=dfs(i,min(map[u][i],low));
if(a<=)continue;
map[u][i]-=a;
map[i][u]+=a;
return a;
}
}
return ;
}
int main()
{
int t,ff=,i,j,m;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&n,&m);
memset(map,,sizeof(map));
for(i=;i<m;i++)
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
map[x][y]+=z;
}
int ans=;
while(bfs())
{
while()
{
int a=dfs(,);
if(!a)break;
ans+=a;
}
}
printf("Case %d: %d\n",++ff,ans);
}
}
最新文章
- 【原创】loadrunner12.53 录制脚本时 打不开网页或者打开网页慢?
- 浅谈 switch和if
- background-position的百分比
- asp.net文本编辑器FCKeditor使用方法详解
- SAP 快速报表
- C# 将日期转换成中文格式
- Chapter 2 Open Book——3
- Spring Boot中使用 Spring Security 构建权限系统
- EOJ3536 求蛇形矩阵每一行的和---找规律
- Notepad++ 安装连接服务器的NppFTP插件
- Mybaits之Mapper动态代理开发
- springMVC_03注解完成hello案例
- WPF Button 样式
- docker容器添加微软雅黑字体
- VPS杂谈(一)
- MySQL的group_concat()函数合并多行数据
- git 拖下laravel 代码后报错 Warning: require(D:\WWW\laravel\bootstrap/../vendor/autoload.php
- idea 设置黑色背景
- 详解Base64编码和解码
- TensorFlow基础笔记(11) max_pool2D函数
热门文章
- jQuery Validate扩展验证方法 (zhangxiaobin)
- TZOJ 2965 A Coin Game(DP)
- Leetcode589.N-ary Tree Preorder TraversalN叉树的前序遍历
- JAVA面试常见问题之常见集合篇
- CSS实例 display display 边距
- 基于RBAC权限管理的后台管理系统
- redis缓存使用详解
- scanf(";%c";, &;ch)和scanf("; %c";, &;ch)和scanf(";%s";, str)的注意事项
- Jboss配置HTTPS
- Socket与TcpClient的区别