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

二分图最大权完美匹配 KM算法

image

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
#define LL long long
#define N 510
#define INF 1e12
int n,m;
int match[N];//右点匹配了哪个左点
int va[N],vb[N];//标记是否在交替路中
LL la[N],lb[N];//左顶标,右顶标
LL w[N][N],d[N];//维护更新的delta值bool dfs(int x){va[x]=1; //x在交替路中for(int y=1;y<=n;y++){if(!vb[y]){if(la[x]+lb[y]-w[x][y]==0){//相等子图vb[y]=1; //y在交替路中if(!match[y]||dfs(match[y])){match[y]=x; //配对return 1;}}else //不是相等子图则记录最小的d[y]d[y]=min(d[y],la[x]+lb[y]-w[x][y]);}}return 0;
}
LL KM(){//左顶标取i的出边的最大边权for(int i=1;i<=n;i++) la[i]=-INF;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++) la[i]=max(la[i],w[i][j]);for(int i=1;i<=n;i++) lb[i]=0;      for(int i=1;i<=n;i++){while(true){//直到左点i找到匹配fill(va+1,va+n+1,0);fill(vb+1,vb+n+1,0);fill(d+1,d+n+1,INF);if(dfs(i))break;LL delta=INF;for(int j=1;j<=n;j++)if(!vb[j])delta=min(delta,d[j]);for(int j=1;j<=n;j++){//修改顶标if(va[j])la[j]-=delta;if(vb[j])lb[j]+=delta;}}}LL res=0;for(int i=1;i<=n;i++)res+=w[match[i]][i];    return res;
}
int main(){scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)for(int j=1;j<=n;j++) w[i][j]=-INF; for(int i=1;i<=m;i++){int x,y,z;scanf("%d%d%d",&x,&y,&z);w[x][y]=z;}printf("%lld\n",KM());for(int i=1;i<=n;i++) printf("%d ",match[i]);return 0;
}
http://www.sczhlp.com/news/176754/

相关文章:

  • 防抖 解释
  • 从零到一搭建:vue3+vite7+antfu+stylelint+githooks,全流程配置,附带源码,集成css变量使用,下载即用
  • 10.8 CSP-JS 模拟赛 T5. xor
  • 无锡有人代做淘宝网站吗企业邮箱多少
  • 苏州吴江做网站全国建设信息网
  • 云南企业网站开发软件技术学的是什么
  • 主机开通成功网站建设中油田公司健康企业建设
  • 网页制作与网站建设技术大全pdfwordpress 不发邮件
  • 织梦网站怎么建设网站设计需要的元素
  • 网站建设应该有什么特点android开发需要学什么
  • 网站建设编辑杭州大型网站建设
  • 网站建设工作情况总结wordpress 二维码 插件
  • 北京网站建设需要花多少钱太仓广告设计公司网站
  • 聊城网站推广阿里巴巴做网站吗
  • 上海专业网站建设服河南省百城建设提质工程官网网站
  • ps做图下载网站网站备案管局
  • 河南红旗渠建设集团网站晚上国网app
  • 新公司做网站多少钱企业网站优化方法
  • 临猗商城网站建设平台WordPress stock
  • 英文网站用什么字体好350模板网
  • 高校档案网站建设的目的是什么关于网页设计的论文范文
  • php 网站管理系统二次开发wordpress
  • 百度网盘做视频网站网页视频加速器
  • 设计素材网站永久网站开发怎么在页面上调用高德地图显示位置
  • 做的网站打开显示无标题技术先进的网站建设
  • 网站开发需要哪些软件ipage wordpress
  • 教育网站制作软件制作网赌app要多少钱
  • 马鞍山市建设银行网站深圳市住房和建设
  • 网站建设288中铁十六局门户网
  • 网站设计ai网页代理最干净最悠久