codevs 1028 花店橱窗布置 (KM)
/*裸地KM*/
#include<iostream>
#include<cstdio>
#include<cstring>
#define maxn 110
#define inf 0x3f3f3f3f
using namespace std;
int n,m,ans,match[maxn],w[maxn][maxn],d;
int fx[maxn],fy[maxn],lx[maxn],ly[maxn];
bool Dfs(int i)
{
fx[i]=;
for(int j=;j<=m;j++)
if(fy[j]==&&lx[i]+ly[j]==w[i][j])
{
fy[j]=;
if(match[j]==||Dfs(match[j]))
{
match[j]=i;
return ;
}
}
return ;
}
void KM()
{
for(int i=;i<=n;i++)
{
lx[i]=-inf;
for(int j=;j<=m;j++)
lx[i]=max(lx[i],w[i][j]);
}
for(int i=;i<=n;i++)
{
while()
{
memset(fx,,sizeof(fx));
memset(fy,,sizeof(fy));
if(Dfs(i))break;
d=inf;
for(int j=;j<=n;j++)
for(int k=;k<=m;k++)
if(fx[j]&&!fy[k])
d=min(d,lx[j]+ly[k]-w[j][k]);
if(d==inf)break;
for(int j=;j<=n;j++)if(fx[j])lx[j]-=d;
for(int j=;j<=m;j++)if(fy[j])ly[j]+=d;
}
}
for(int i=;i<=m;i++)
if(match[i])
ans+=w[match[i]][i];
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
scanf("%d",&w[i][j]);
KM();
printf("%d\n",ans);
return ;
}
codevs 1028 花店橱窗布置 (KM)的更多相关文章
- codevs 1028 花店橱窗布置 KM算法
题目链接 n个花, m个花瓶, 每个花放到一个花瓶里会产生一个值w[i][j], 一个花只能放到一个花瓶里, 一个花瓶只能放一个花, 求产生的最大值. 带权二分图模板. #include <io ...
- codevs 1028 花店橱窗布置
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 假设以最美观的方式布置花店的橱窗,有F束花,V个花瓶,我们用美学值(一个整 ...
- wikioi 1028 花店橱窗布置 最大权匹配
中文题意不描述. 链接:http://wikioi.com/problem/1028/ 这题一开始很裸的最大权二分匹配.但是原来没有接触过,KM的这个最大权不大会.然后一开始以为用最大费用最大流直接就 ...
- [IOI1999]花店橱窗布置(DP路径记录)
题目:[IOI1999]花店橱窗布置 问题编号:496 题目描述 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,从左到右按1到V顺序编号,V ...
- 洛谷P1854 花店橱窗布置 分析+题解代码
洛谷P1854 花店橱窗布置 分析+题解代码 蒟蒻的第一道提高+/省选-,纪念一下. 题目描述: 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定 ...
- RQNOJ PID496/[IOI1999]花店橱窗布置
PID496 / [IOI1999]花店橱窗布置 ☆ 题目描述 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,从左到右按1到V顺序 编号 ...
- 【2018寒假集训 Day2】【2019.5.11更新】【动态规划】花店橱窗布置(FLOWER)
花店橱窗布置(FLOWER) 提交文件名:flower 问题描述: 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,从左到右按1到V顺序编号, ...
- AC日记——花店橱窗布置 codevs 1028
题目描述 Description 假设以最美观的方式布置花店的橱窗,有F束花,V个花瓶,我们用美学值(一个整数)表示每束花放入每个花瓶所产生的美学效果.为了取得最佳的美学效果,必须使花的摆放取得最大的 ...
- codevs1028花店橱窗布置(费用流)
这几天刚学了费用流,找到了这道题来练一练手. 题目: 题目描述 Description 假设以最美观的方式布置花店的橱窗,有F束花,V个花瓶,我们用美学值(一个整数)表示每束花放入每个花瓶所产生的美学 ...
随机推荐
- VBoxManage 命令行使用
原文地址:http://cnjun939.blog.163.com/blog/static/78144538201251474311135/ 由于最近需研究virtualbox,看好看到上面的网址有, ...
- ls命令解析
ls 列出目录的内容.它可是我们所经常使用的命令,那么你了解它所有的功能吗?下面让我们来看看吧! 命令格式 ls [OPTION]... [FILE]... 参数说明 -a , --all 显示所有文 ...
- oracle创建表空间、用户、用户授权、删除表空间、删除用户
--创建临时表空间 create temporary tablespace test_temp --test_temp表空间名称 tempfile 'E:\oracle\product\10.2.0\ ...
- ext中嵌入flash
方法1: xtype: 'fieldset', border: 0, title: "", items[{ xtype: 'flash', url: 'Test.swf' }] u ...
- sublime3 插件pylinter的安装
1.首先sublime需要安装package control,之后安装pylinter插件,并进行简单的属性配置(网上教程很多,略) 2.之后是pylint_path的配置,我参照网上的配置失败,su ...
- javascript mvc 简单例子
<!DOCTYPE html> <html> <head> </head> <body> <input type="text ...
- js 超级玛丽(未完成)
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- curl 解析
获得页面 使用命令:curl http://curl.haxx. se 这是最简单的使用方法.用这个命令获得了http://curl.haxx. se指向的页面,同样,如果这里的URL指向的是一个文件 ...
- jquery easy ui 学习 (3) window 限制在父类窗体内
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- C语言结构体占用空间内存大小解析
结构体的数据类型的有点我们就不啰嗦了,直接来看相同数据结构体的几种书写的格式吧. 格式一: 01.struct tagPhone 02.{ 03. char A; 04. int ...