CH5E02 [IOI1999]花店橱窗[暴力dp]
众所周知,这个人太菜了,所以她又来切水题了。
显然设计状态表示第$i$朵花放第$j$瓶中的最大价值。然后瞎转移一波是n三方的,加个前缀max变成n方就水过去了。
当然这题可以搜索剪枝的。
虐lyd书上水题好爽。。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<queue>
#define dbg(x) cerr<<#x<<" = "<<x<<endl
#define _dbg(x,y) cerr<<#x<<" = "<<x<<" "<<#y<<" = "<<y<<endl
using namespace std;
typedef long long ll;
template<typename T>inline char MIN(T&A,T B){return A>B?A=B,:;}
template<typename T>inline char MAX(T&A,T B){return A<B?A=B,:;}
template<typename T>inline T _min(T A,T B){return A<B?A:B;}
template<typename T>inline T _max(T A,T B){return A>B?A:B;}
template<typename T>inline T read(T&x){
x=;int f=;char c;while(!isdigit(c=getchar()))if(c=='-')f=;
while(isdigit(c))x=x*+(c&),c=getchar();return f?x=-x:x;
}
const int N=+,INF=0x7f7f7f7f;
int f[N][N],a[N][N],maxv[N][N];
int n,m,ans,x;
void print(int i,int j){
if(!i)return;
print(i-,maxv[i-][j-]);
printf("%d ",j);
} int main(){//freopen("test.in","r",stdin);//freopen("test.out","w",stdout);
read(n),read(m);
for(register int i=;i<=n;++i)for(register int j=;j<=m;++j)read(a[i][j]);
for(register int i=;i<=n;++i){
int tmp=-INF;
for(register int j=i;j<=m;++j){
f[i][j]=a[i][j]+f[i-][maxv[i-][j-]];
maxv[i][j]=MAX(tmp,f[i][j])?j:maxv[i][j-];
}
}
for(register int i=n;i<=m;++i)if(MAX(ans,f[n][i]))x=i;
printf("%d\n",ans);
print(n,x);puts("");
return ;
}
CH5E02 [IOI1999]花店橱窗[暴力dp]的更多相关文章
- [IOI1999]花店橱窗布置(DP路径记录)
		
题目:[IOI1999]花店橱窗布置 问题编号:496 题目描述 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,从左到右按1到V顺序编号,V ...
 - RQNOJ  PID496/[IOI1999]花店橱窗布置
		
PID496 / [IOI1999]花店橱窗布置 ☆ 题目描述 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,从左到右按1到V顺序 编号 ...
 - 【洛谷P1854】花店橱窗 线性dp+路径输出
		
题目大意:给定 N 个数字,编号分别从 1 - N,M 个位置,N 个数字按照相对大小顺序放在 M 个位置里,每个数放在每个位置上有一个对答案的贡献值,求一种摆放方式使得贡献值最大. 题解:一道典型的 ...
 - CH5E02 花店橱窗【线性DP】
		
5E02 花店橱窗 0x5E「动态规划」练习 背景 xq和他的老婆xz最近开了一家花店,他们准备把店里最好看的花都摆在橱窗里.但是他们有很多花瓶,每个花瓶都具有各自的特点,因此,当各个花瓶中放入不同的 ...
 - 花店橱窗(flower)
		
花店橱窗(flower) 题目描述 某花店现有f束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,从左到右按1到V顺序编号,V是花瓶的数目.花束可以移动,并 ...
 - 洛谷P1854 花店橱窗布置 分析+题解代码
		
洛谷P1854 花店橱窗布置 分析+题解代码 蒟蒻的第一道提高+/省选-,纪念一下. 题目描述: 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定 ...
 - [JOYOI] 1124 花店橱窗
		
题目限制 时间限制 内存限制 评测方式 题目来源 1000ms 131072KiB 标准比较器 Local 题目背景 xq和他的老婆xz最近开了一家花店,他们准备把店里最好看的花都摆在橱窗里.但是他们 ...
 - 【2018寒假集训 Day2】【2019.5.11更新】【动态规划】花店橱窗布置(FLOWER)
		
花店橱窗布置(FLOWER) 提交文件名:flower 问题描述: 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定的,从左到右按1到V顺序编号, ...
 - Luogu P1436 棋盘分割 暴力DP
		
我的天,,,,,n=8,k<=15,,,这怕不是暴力DP+高维数组.... 开一个五维数组f[k][i][j][p][q]表示从(i,j)到(p,q)中分成k个矩形最小的平方和. 然后初始化时用 ...
 
随机推荐
- python tkinter组件学习
			
http://blog.csdn.net/pfm685757/article/details/50162567
 - android camera jni调用
			
http://www.mamicode.com/info-detail-1002139.html how to compile library of native camera for androi ...
 - nand flash详解及驱动编写
			
https://www.crifan.com/files/doc/docbook/linux_nand_driver/release/html/linux_nand_driver.html#nand_ ...
 - vRO 7 添加RestHost证书报错
			
报错类似的错误: Cannot execute request: ; java.security.cert.CertificateException: Certificates does not co ...
 - Yii技巧大全(摘录)
			
Yii技巧大全(摘录) db组件 'schemaCachingDuration'=>3600, 为什么不起做用? 需要开缓存 如何在页面下边显示sql的查询时间 在log组件的routes中加入 ...
 - HDU 2603 二分匹配
			
#include <queue>#include <vector>#include <cstdio>#include <cstring>#include ...
 - 网络安全-跨站脚本攻击XSS(Cross-Site Scripting)
			
一.XSS攻击简介 作为一种HTML注入攻击,XSS攻击的核心思想就是在HTML页面中注入恶意代码,而XSS采用的注入方式是非常巧妙的. 在XSS攻击中,一般有三个角色参与:攻击者.目标服务器.受害者 ...
 - 【bzoj2819】Nim(dfs序+树状数组/线段树)
			
题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=2819 首先根据SG定理,可得若每堆石子数量的异或值为0,则后手必胜,反之先手必胜.于是 ...
 - 加和求不同的组合方式数目(dp)
			
描述 有n个正整数,找出其中和为t(t也是正整数)的可能的组合方式.如: n=5,5个数分别为1,2,3,4,5,t=5: 那么可能的组合有5=1+4和5=2+3和5=5三种组合方式. 输入 输入的第 ...
 - MapReduce-计数器
			
计数器 计数器是收集作业统计信息的有效手段之一,用于质量控制或应用级统计.计数器还可辅助诊断系统故障.根据计数器值来记录某一特定事件的发生比分析一堆日志文件容易得多.内置计数器Hadoop为每个作业维 ...