HDU 3488 KM

http://acm.hdu.edu.cn/showproblem.php?pid=3488

依然KM, 可以最小费用流  与HDU1853 差不多,但是1853要判断是否满足回路的的条件,KM还不会判回路,所以做1853时学了最小费用流做的,说是学最小费用流  只是皮毛了。。。

代码(KM):

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<cmath>
#include<algorithm>
#define Max(a,b)a>b?a:b
#define Min(a,b)a<b?a:b
#define inf 999999
#define MAX 202
using namespace std;
int map[MAX][MAX],lx[MAX],ly[MAX],link[MAX];
bool vx[MAX],vy[MAX];
int n;
struct Node
{int x,y;
};
Node H[MAX],M[MAX];bool dfs(int x)
{int j;vx[x]=1;for(j=1;j<=n;j++){if(!vy[j]&&map[x][j]==lx[x]+ly[j]){vy[j]=1;if(!link[j]||dfs(link[j])){link[j]=x;return 1;}}}return 0;
}
int KM()
{int i,j,k;for(i=1;i<=n;i++){lx[i]=-inf;for(j=1;j<=n;j++)lx[i]=Max(lx[i],map[i][j]);}memset(ly,0,sizeof(ly));memset(link,0,sizeof(link));for(i=1;i<=n;i++){while(1){memset(vx,0,sizeof(vx));memset(vy,0,sizeof(vy));if(dfs(i))break;int MIN=inf;for(j=1;j<=n;j++)if(vx[j])for(k=1;k<=n;k++)if(!vy[k])MIN=Min(MIN,lx[j]+ly[k]-map[j][k]);for(j=1;j<=n;j++)if(vx[j])lx[j]-=MIN;for(j=1;j<=n;j++)if(vy[j])ly[j]+=MIN;}}int ans=0;for(j=1;j<=n;j++)if(link[j])ans+=map[link[j]][j];return ans;
}int main()
{int i,j,fee,m;char ch[MAX];int CASE;scanf("%d",&CASE);while(CASE--){scanf("%d%d",&n,&m);for(i=1;i<=n;i++)for(j=1;j<=n;j++)map[i][j]=-inf;while(m--){scanf("%d%d%d",&i,&j,&fee);map[i][j]=Max(map[i][j],-fee);}int ans=-KM();printf("%d\n",ans);}return 0;
}

  

转载于:https://www.cnblogs.com/sdau10kuaile/archive/2012/04/04/2432469.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/274911.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java 面向对象的程序设计(二)

编写一个java程序&#xff0c;设计一个汽车类Vehicle&#xff0c;包含的属性有车轮的个数wheels和车重weight。小汽车类Car是Vehicle的子类&#xff0c;包含的属性有载人数loader。卡车类Truck是Car类的子类&#xff0c;其中包含的属性有载重量payload。每个类都有构造方法和输…

16位调色板和32位调色板_使调色板可访问

16位调色板和32位调色板Accessibility has always been a tough sell. Admittedly, less so than in the ‘nineties, when no prospective client was interested. But even today — more enlightened times — the majority of companies I encounter still prefer to make …

从零开始发布自己的NPM包

大家好&#xff0c;我是若川。持续组织了6个月源码共读活动&#xff0c;感兴趣的可以点此加我微信 ruochuan02 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列在Ver…

flash不能访问本地文件

flash出现"不能访问本地资源";解决方案 linux下&#xff0c;如果没有文件夹自行创建 在/home/{user}/.macromedia/Flash_Player/#Security/FlashPlayerTrust下面&#xff0c;随便建个文本文件&#xff0c;比如1.txt 然后写入路径&#xff0c;最省事的办法直接来个/ 凶…

Jest + React Testing Library 单测总结

大家好&#xff0c;我是若川。持续组织了6个月源码共读活动&#xff0c;感兴趣的可以点此加我微信 ruochuan02 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列1、背…

不怕神一样的对手就怕猪一样的队友

“不怕神一样的对手就怕猪一样的队友”这句话现在广为流传&#xff0c;实际上说的就是团队重要性&#xff0c;一个好的团队是可以克服很多你想象不大的困难&#xff0c; 做出你觉得不可能成绩。 但是很多时候我们面临的不是神一样的对手&#xff0c;而是猪一样的队友&#xff0…

着迷英语900句_字体令人着迷

着迷英语900句I’m crazy about fonts. My favorite part of any text editing software is the drop down menu for picking fonts. When I look at any text, I try to identify the font. Roboto is my favorite font.我为字体疯狂。 在任何文本编辑软件中&#xff0c;我最喜…

hdu 2188悼念512汶川大地震遇难同胞——选拔志愿者(博弈)

简单博弈就那样&#xff0c;懂SG函数就成&#xff0c;最近做的博弈都千篇一律。。。 #include<cstdio> #include<cstring> #define N 11110 int sg[N],s[N],m,n; bool h[N]; void ssgg() {int i,j;sg[0]0;for(i1;i<N;i){ memset(h,0,sizeof(h));for(j1;j<n;j…

推荐一个大佬,文章适合偷偷读!

大家好&#xff0c;我是若川。周末愉快。也许你看到这篇文章是周一的上午~我不得不推荐一位大佬给你&#xff01;这位大佬的文章很硬&#xff0c;却一直在「抱怨没有粉丝&#xff0c;没人愿意分享」我去读了读&#xff0c;尼玛这个「谁TM敢分享啊」&#xff0c;文章太「违规」了…

PERFORMANCE-MONITORING(转)

Performance-Monitoring 是Intel提供的可以监测统计CPU内部所产生事件的一组方法。在Intel的手册上介绍了两类CPU事件监测方法&#xff1a;architectural performance monitoring 和 non-architectural performance monitoring。Architectural performance monitoring与平台&am…

ux设计_为企业UX设计更好的数据表

ux设计重点 (Top highlight)If you have worked on enterprise products, you must have noticed the use of lots of data tables. Therefore, I am writing this article to collect the most common use cases and discuss how elegantly we can handle them.如果您使用过企…

hdu1728--------坑爹啊

尼玛&#xff0c;就因为没发现‘yes’写成‘yrs’。整整让哥找了一个小时的bug。有没有..........此刻&#xff0c;内流满面&#xff01; 分析&#xff1a; 开始以为是单纯的BFS,结果WA无数次&#xff01;&#xff01; 后来分析后发现是要找到不超过转向次数的转向路径, 最重要…

狼叔直播 Reaction《学习指北:Node.js 2022 全解析》

大家好&#xff0c;我是若川。持续组织了6个月源码共读活动&#xff0c;感兴趣的可以点此加我微信 ruochuan02 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列本文是…

figma下载_Figma中的高级图像处理

figma下载Figma is not exactly suited for image manipulation, and that’s completely fine. While it does provide an ample amount of tools that let you apply some basic changes to your raster images, for anything more complex you need to look someplace else.…

ToString格式化

在很多对象显示为字符串的时候都会使用到ToString中的格式化&#xff0c;由于以前没怎么注意到这个问题&#xff0c;想总结一下各个基础结构对象的格式化&#xff0c;以便后备之用&#xff01;&#xff01;&#xff01;Int.ToString(format): 格式字符串采用以下形式&#xff1…

xml学习4-dtd

1、DTD元素的定义 <?xml version"1.0" encoding"gb2312"?> <!--*表示0或者多个 表示至少要有一个 ?表示0个或者一个 内容模型 |表示只能包含分隔开中的一个 ,表示序列 下面是DTD元素的声明 #PCDATA 表示字符数据 EMPTY表示 空元素…

指针和指针的指针_网络上的iPad指针

指针和指针的指针a week ago I saw a new IPad Pointer presentation and was very excited about what they did. It was very interesting to see how they design different pointer modes and attention to details. Here is the presentation:一周前&#xff0c;我看到了一…

Vue 是如何用 Rollup 打包的?

大家好&#xff0c;我是若川。持续组织了6个月源码共读活动&#xff0c;感兴趣的可以点此加我微信 ruochuan12 参与&#xff0c;每周大家一起学习200行左右的源码&#xff0c;共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列Rollu…

leetcode 207课程表

class Solution { public:bool canFinish(int numCourses, vector<vector<int>>& prerequisites) {//验证是否为DAG&#xff0c;每次验证指向的是否已经存在于当前图中//建图vector<int> indegree(numCourses,0);//入度vector<vector<int>> …

2012-04-12

一.JS 中的return Return false&#xff1a;相当于一个终止符,用来阻止提交表单或继续执行下面的代码&#xff0c;只在当前函数有效&#xff0c;不会影响其他外部函数的执行 Eg: function a(){if(true) return false;} Function test{a();b();c();} //a方法中的return false 不…