hdu 3488 Tour (KM)
来源:互联网 发布:sql 增加列 默认值 编辑:程序博客网 时间:2024/05/17 23:08
跟1853一样的题
#include<stdio.h>#include<string.h>#define N 210#define inf 0x3fffffffint map[N][N],lx[N],ly[N],match[N],n;bool sx[N],sy[N];bool find(int u){sx[u]=true;for(int j=1;j<=n;j++){if(!sy[j]&&lx[u]+ly[j]==map[u][j]){sy[j]=true;if(match[j]==-1||find(match[j])){match[j]=u;return true;}}}return false;}int KM(){int i,j,k,d;memset(ly,0,sizeof(ly));for(i=1;i<=n;i++){lx[i]=map[i][1];for(j=2;j<=n;j++)if(lx[i]<map[i][j])lx[i]=map[i][j];}memset(match,-1,sizeof(match));for(i=1;i<=n;i++){while(1){memset(sx,false,sizeof(sx));memset(sy,false,sizeof(sy));if(find(i))break;d=inf;for(j=1;j<=n;j++){if(!sx[j])continue;for(k=1;k<=n;k++){if(sy[k])continue;if(d>lx[j]+ly[k]-map[j][k])d=lx[j]+ly[k]-map[j][k];}}if(d==inf)return 1;for(j=1;j<=n;j++){if(sx[j])lx[j]-=d;if(sy[j])ly[j]+=d;}}}int sum=0;for(i=1;i<=n;i++){if(map[match[i]][i]==-inf)return 1;sum+=map[match[i]][i];}return sum;}int main(){int i,j,m,t,x,y,a;scanf("%d",&t);while(t--){scanf("%d%d",&n,&m);for(i=1;i<=n;i++)for(j=1;j<=n;j++)map[i][j]=-inf;for(i=1;i<=m;i++){scanf("%d%d%d",&x,&y,&a);if(-a>map[x][y])map[x][y]=-a;}printf("%d\n",-KM());}return 0;}
- hdu 3488 Tour (KM)
- tour hdu 3488 KM
- hdu 3488 Tour KM
- hdu 3488 Tour【KM】同hdu 1853
- HDU 1853 Cyclic Tour && HDU 3488Tour KM算法
- Tour(hdu 3488,KM+拆点)
- HDU 3488 Tour(KM完美匹配)
- hdu 1853 Cyclic Tour //km
- hdu 1853 Cyclic Tour【KM】
- hdu 1853 Cyclic Tour (KM)
- hdu 1853 Cyclic Tour KM
- HDU 3488 — Tour 费用流/KM算法
- HDU 3488 Tour (最小费用流 或 KM)
- hdu 3488 Tour km二分匹配最小权
- hdoj--3488--Tour(KM)
- HDU 1853 Cyclic Tour KM算法
- hdu 3488 Tour(二分匹配 最小权完备匹配 km算法)
- HDU 3488 Tour [裂点+KM或最小费用最大流]
- 三天打渔两天晒网 C程序实现
- 微博开发
- POJ 2239 二分最大匹配
- ASP.NET性能提升秘诀之管道与进程优化
- ucosii在stm32上的移植详解
- hdu 3488 Tour (KM)
- SQL Server索引进阶第八篇:唯一索引
- JDBC以及相关技术学习(十)----拦截Connection的close方法
- 分析TCP/IP协议栈代码之ARP(STM32平台)
- mongodb 安装与启动
- Android任务与返回堆栈 (Tasks and Back Stack)
- 深入学习XML和XSD
- libjpeg移植arm
- VC6打开一个文件或工程的时候,会导致VC6崩溃而关闭