当前位置: 首页 > news >正文

英语课件做的好的网站上海浦东注册公司

英语课件做的好的网站,上海浦东注册公司,html5软件下载官网,企业注册公司流程转载请注明出自cxb:http://blog.csdn.net/cxb569262726 题目链接#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid1533 说实话#xff0c;这个题目刚开始还真看不出是完备匹配下的最大权匹配#xff08;当然#xff0c;这个也可以用网络流做。#xff08;应该是添加…转载请注明出自cxb:http://blog.csdn.net/cxb569262726 题目链接http://acm.hdu.edu.cn/showproblem.php?pid1533 说实话这个题目刚开始还真看不出是完备匹配下的最大权匹配当然这个也可以用网络流做。应该是添加源点、汇点源点到每个m的距离取m到所有H中最小的那个用一个大数减掉后就是最大的汇点到每个H的距离类似然后求最大流 有空再试着做一下吧空说无益。 我是在图论500题里看到的在网络流基础题里面。一开始想不出这个怎么流 后面网上查这个是二分图最优匹配。于是昨天花几个小时看了相关资料写了个比这题更水的 HDU2255。 今天写这题的时候明显轻松了。而且还想到用网络流的做法。发现网络流和二分匹配还是有联系的。 下面直接贴代码吧看不懂的可以先看http://blog.csdn.net/cxb569262726/article/details/7871313 #includecstdio #includecstring #includeiostream #includecmath #includecstdlib #includeclimits #define MAXN 105 using namespace std;int n,m,numm,numh; int map[MAXN][MAXN],lx[MAXN],ly[MAXN],vx[MAXN],vy[MAXN],matchy_x[MAXN]; char s[MAXN][MAXN]; int abs(int a){return a0?-a:a;}bool hungary(int u) {int i;vx[u]1;for(i0;inumm;i){if(vy[i] || map[u][i]!lx[u]ly[i]) continue;vy[i]1;if(matchy_x[i]-1 || hungary(matchy_x[i])){matchy_x[i]u;return 1;}}return 0; }void EK_match() {int i,j;for(i0;inumm;i){int maxx0;for(j0;jnumh;j)if(map[i][j]maxx) maxxmap[i][j];lx[i]maxx;}for(i0;inumm;i){while(1){memset(vx,0,sizeof(vx));memset(vy,0,sizeof(vy));if(hungary(i))break;else{int tempINT_MAX;for(j0;jnumm;j) if(vx[j])for(int k0;knumh;k) if(!vy[k] templx[j]ly[k]-map[j][k])templx[j]ly[k]-map[j][k];for(j0;jnumm;j){if(vx[j]) lx[j]-temp;if(vy[j]) ly[j]temp;}}}} }int main() {int i,j;while(scanf(%d%d,n,m)!EOF (n||m)){for(i0;in;i) scanf(%s,s[i]);numm0;for(i0;in;i){for(j0;jm;j){if(s[i][j]m){numh0;for(int k0;kn;k){for(int l0;lm;l){if(s[k][l]H)map[numm][numh]300-(abs(i-k)abs(j-l));}}numm;}}}memset(matchy_x,-1,sizeof(matchy_x));EK_match();int ans0;for(i0;inumm;i)ans(300-map[matchy_x[i]][i]);printf(%d\n,ans);}return 0; }  以下是slack数组优化的 #includecstdio #includecstring #includeiostream #includecmath #includecstdlib #includeclimits #define MAXN 105 using namespace std;int n,m,numm,numh; int map[MAXN][MAXN],lx[MAXN],ly[MAXN],vx[MAXN],vy[MAXN],matchy_x[MAXN],slack[MAXN]; char s[MAXN][MAXN]; int abs(int a){return a0?-a:a;} int min(int a,int b) {return ab?a:b;}bool hungary(int u) {int i;vx[u]1;for(i0;inumm;i){if(vy[i]) continue;if(map[u][i]lx[u]ly[i]){vy[i]1;if(matchy_x[i]-1 || hungary(matchy_x[i])){matchy_x[i]u;return 1;}}else slack[i]min(slack[i],lx[u]ly[i]-map[u][i]);}return 0; }void EK_match() {int i,j;for(i0;inumm;i){int maxx0;for(j0;jnumh;j)if(map[i][j]maxx) maxxmap[i][j];lx[i]maxx;}for(i0;inumm;i){memset(slack,127,sizeof(slack));while(1){memset(vx,0,sizeof(vx));memset(vy,0,sizeof(vy));if(hungary(i))break;else{int tempINT_MAX;for(j0;jnumm;j) if(!vy[j])if(tempslack[j]) tempslack[j];for(j0;jnumm;j){if(vx[j]) lx[j]-temp;if(vy[j]) ly[j]temp;else slack[j]-temp;}}}} }int main() {int i,j;while(scanf(%d%d,n,m)!EOF (n||m)){for(i0;in;i)scanf(%s,s[i]);numm0;for(i0;in;i){for(j0;jm;j){if(s[i][j]m){numh0;for(int k0;kn;k){for(int l0;lm;l){if(s[k][l]H)map[numm][numh]300-(abs(i-k)abs(j-l));}}numm;}}}memset(matchy_x,-1,sizeof(matchy_x));EK_match();int ans0;for(i0;inumm;i)ans(300-map[matchy_x[i]][i]);printf(%d\n,ans);}return 0; }ok睡觉吧。。明天比赛~~~  Good   luck 转载于:https://www.cnblogs.com/javaspring/archive/2012/08/16/2656035.html
http://www.yutouwan.com/news/210194/

相关文章:

  • 做刷单网站犯法吗网站关键词如何优化上首页
  • 网站公网安备链接怎么做惠州市seo广告优化营销工具
  • 有哪些简单的网站联系人网站设计
  • 做qq群头像网站深圳app开发外包
  • 建设部网站电子政务企业信息信用信息公示网官网
  • 企业做网站推广产品需要多少钱dedecms网站建设合同
  • 桓台网站设计花80亿美元建空间站
  • 网站的需求分析怎么写免费域名申请 知乎
  • 公司网站是否有必要销售产品南宁市兴宁区建设局网站
  • 做竞价的网站做优化有效果吗项目管理软件的分类
  • 运用.net做网站辽宁做网站和优化哪家好
  • 荣县做网站的知乎免费阅读网站
  • 嘉兴网站开发公司电话卓进网站
  • 济南房产信息网站官网查询提升关键词优化排名软件
  • 免费企业网站源代码网络营销团队
  • 个人网站软件免费软件下载网
  • 合肥市网站制作公司网站建设任务书
  • 门户网站建设的成果wordpress分类文章倒序函数
  • 荣成城市规划建设局网站c2c交易
  • 建立网站赚多少钱网站会员系统方案
  • 国外 设计网站博客软件 WordPress等
  • 仿淘宝网站建设国内比较好的wordpress
  • 职参简历网站哔哩哔哩网页版打不开
  • 连云港外贸网站建设个人页面模板
  • wordpress缓存首页不正常seo排名查询工具
  • 找人做效果土去那网站找wordpress 按钮支付
  • 找平面图的网站厦门翔安区建设局网站
  • 仿站小工具使用教程门户网站建设情况
  • 全国卫生计生机构建设管理系统网站数字营销的定义是
  • 盐城市住房和城乡建设局门户网站设立网站 费用