codevs 1028 花店橱窗布置
假设以最美观的方式布置花店的橱窗,有F束花,V个花瓶,我们用美学值(一个整数)表示每束花放入每个花瓶所产生的美学效果。为了取得最佳的美学效果,必须使花的摆放取得最大的美学值。
第一行为两个整数F,V(F<=V<=100)
接下来F行每行V个整数,第i行第j个数表示第i束花放入第j个花瓶的美学值。
一个整数,即最大美学值。
2 2
10 0
5 2
12
二分图
km或费用流
本蒟蒻用的费用流 机房某z姓大佬好像在学km 先模几发%%%
#include <cstdio>
#include <queue>
#define N 1000005
#define FWQ 0xefefefef
using namespace std;
struct Edge
{
int next,flow,cost,to;
}edge[N<<];
bool vis[N];
int head[N],cnt=,F,V,fa[N],dis[N];
void ins(int u,int v,int w,int l)
{
edge[++cnt].next=head[u];
edge[cnt].to=v;
edge[cnt].flow=w;
edge[cnt].cost=l;
head[u]=cnt;
}
bool spfa(int s,int t)
{
queue<int>q;
for(int i=s;i<=t;++i) vis[i]=,dis[i]=FWQ;
dis[s]=;
q.push(s);
for(int now;!q.empty();)
{
now=q.front();
q.pop();
vis[now]=;
for(int u=head[now];u;u=edge[u].next)
{
int v=edge[u].to;
if(dis[v]<dis[now]+edge[u].cost&&edge[u].flow)
{
dis[v]=dis[now]+edge[u].cost;
fa[v]=u;
if(!vis[v])
{
vis[v]=;
q.push(v);
}
}
}
}
return dis[t]!=FWQ;
}
int dinic(int s,int t)
{
int ans=;
for(;spfa(s,t);)
{
for(int i=t;i!=s&&i;i=edge[fa[i]^].to)
{
edge[fa[i]].flow--;
edge[fa[i]^].flow++;
}
ans+=dis[t];
}
return ans;
}
int Main()
{
scanf("%d%d",&F,&V);
int s=,t=F+V+;
for(int i=;i<=F;++i) ins(s,i,,),ins(i,s,,);
for(int i=F+;i<=F+V;++i) ins(i,t,,),ins(t,i,,);
for(int a,i=;i<=F;++i)
for(int j=;j<=V;++j)
scanf("%d",&a),ins(i,j+F,,a),ins(j+F,i,,-a);
printf("%d\n",dinic(s,t));
return ;
}
int sb=Main();
int main(int argc,char *argv[]){;}
codevs 1028 花店橱窗布置的更多相关文章
- codevs 1028 花店橱窗布置 (KM)
/*裸地KM*/ #include<iostream> #include<cstdio> #include<cstring> #define maxn 110 #d ...
- codevs 1028 花店橱窗布置 KM算法
题目链接 n个花, m个花瓶, 每个花放到一个花瓶里会产生一个值w[i][j], 一个花只能放到一个花瓶里, 一个花瓶只能放一个花, 求产生的最大值. 带权二分图模板. #include <io ...
- 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个花瓶,我们用美学值(一个整数)表示每束花放入每个花瓶所产生的美学 ...
随机推荐
- PLSQ创建用户L
1.首先使用dba权限角色登陆PLSQL 2.选择File-New-User 输入需要创建的账户及密码,选择表空间 3.一定要分配的权限:Role privileges 角色权限,至少分配conn ...
- 了解protected 以及公用、私有和受保护的继承
protected成员 可以认为protected访问标号是private 和public 的混合: 1.像private成员一样,protected成员不能被类的用户访问. 2.像public成员一 ...
- WSAData是个什么结构体用什么用
WSAData机构体如下 功能是:存放windows socket初始化信息.struct WSAData { WORD wVersion; WORD wHighVersion; char szDes ...
- Razor与HTML混合输出陷阱与技巧
3,Razor与HTML混合输出陷阱与技巧 属性名称误判 有时候我们必须让html内容与razor语句紧接在一起, eg: 您好,a先生 假设变量名称为ViewBag.Name, 您好, ...
- C#阵列Array排序
五一假期回来,练习一下C#的一些知识,了解一下排序. 练习数据: , , , , , , , , }; 写一个类: using System; using System.Collections.Gen ...
- Fenwick Tree / Binary Indexed Tree
Motivation: Given a 1D array of n elements. [2, 5, -1, 3, 6] range sum query: what's the sum from 2n ...
- HyperLedger Fabric 多机部署(一)
本文参考:http://www.lijiaocn.com/%E9%A1%B9%E7%9B%AE/2018/04/26/hyperledger-fabric-deploy.html 学习. 1.准备工 ...
- oracle merge 目标表以及源表存在重复列的问题(转)
SQL> select * from t_source; ...
- RabbitMQ下载安装教程 Windows10
https://blog.csdn.net/weixin_39735923/article/details/79288578
- vue教程2-组件化开发
全局组件 <div id="app"> <cs1></cs1> </div> <script> Vue.componen ...