P2979 [USACO10JAN]奶酪塔Cheese Towers
P2979 [USACO10JAN]奶酪塔Cheese Towers
背包dp
不过多了一个大奶酪可以压扁其他奶酪的
一开始写了个暴力82分。贪心的选择
然后发现,有如下两种规律
要么最优都是小奶酪,要么就是有一个大奶酪是在顶上的。
所以我们先用小奶酪跑一遍背包,记录最优值。
然后加上大奶酪,不考虑压缩的再跑一遍。因为如果大奶酪在上面的话,我们就不用考虑在dp中压缩,直接跑完dp后。看做一大块一起压缩
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
using std::max;
const int maxn=1300;
const int N=110;
int h[N],V[N];
int f[maxn];
int main()
{
int n,t,k;
scanf("%d%d%d",&n,&t,&k);
for(int i=1;i<=n;i++)
scanf("%d%d",&V[i],&h[i]);
int top=1.0*t*5/4+0.5;
for(int i=1;i<=n;i++)
if(h[i]<k)
for(int j=h[i];j<=top;j++)
f[j]=max(f[j],f[j-h[i]]+V[i]);
int ans=f[t];
for(int i=1;i<=n;i++)
if(h[i]>=k)
for(int j=h[i];j<=top;j++)
f[j]=max(f[j],f[j-h[i]]+V[i]);
for(int i=1;i<=n;i++)
if(h[i]>=k)
ans=max(ans,f[(t-h[i])*5/4]+V[i]);
printf("%d",ans);
}
P2979 [USACO10JAN]奶酪塔Cheese Towers的更多相关文章
- 洛谷 P2979 [USACO10JAN]奶酪塔Cheese Towers
P2979 [USACO10JAN]奶酪塔Cheese Towers 题目描述 Farmer John wants to save some blocks of his cows' delicious ...
- P2979 [USACO10JAN]奶酪塔Cheese Towers(完全背包,递推)
题目描述 Farmer John wants to save some blocks of his cows' delicious Wisconsin cheese varieties in his ...
- BZOJ2021: [Usaco2010 Jan]Cheese Towers
2021: [Usaco2010 Jan]Cheese Towers Time Limit: 4 Sec Memory Limit: 64 MBSubmit: 184 Solved: 107[Su ...
- 【BZOJ】2021: [Usaco2010 Jan]Cheese Towers(dp)
http://www.lydsy.com/JudgeOnline/problem.php?id=2021 噗,自己太弱想不到. 原来是2次背包. 由于只要有一个大于k的高度的,而且这个必须放在最顶,那 ...
- BZOJ 2021 [Usaco2010 Jan]Cheese Towers:dp + 贪心
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2021 题意: John要建一个奶酪塔,高度最大为m. 他有n种奶酪.第i种高度为h[i]( ...
- BZOJ 2021 Usaco2010 Jan Cheese Towers 动态规划
题目大意:全然背包.假设最顶端的物品重量≥k,那么以下的全部物品的重量变为原来的45 考虑一些物品装进背包,显然我要把全部重量大于≥k的物品中重量最小的那个放在最顶端.才干保证总重量最小 那么我们给物 ...
- BZOJ-USACO被虐记
bzoj上的usaco题目还是很好的(我被虐的很惨. 有必要总结整理一下. 1592: [Usaco2008 Feb]Making the Grade 路面修整 一开始没有想到离散化.然后离散化之后就 ...
- bzoj AC倒序
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...
- LightOJ1126 Building Twin Towers(DP)
题目 Source http://www.lightoj.com/volume_showproblem.php?problem=1126 Description Professor Sofdor Al ...
随机推荐
- Eclipse的企业开发时常用快捷键使用、优化配置(博主推荐)
不多说,直接上干货! 一.简介 eclipse可谓是Java开发界的神器,基本占据了大部分的Java开发市场,而且其官方还对其他语言提供支持,如C++,Ruby,JavaScript等等.为什么使用它 ...
- Android代码中实现WAP方式联网
无论是移动.联通还是电信,都至少提供了两种类型的的APN:WAP方式和NET方式.其中NET方式跟WIFI方式一样,无需任何设置,可自由访问所有类型网站,而WAP方式,需要手机先设置代理服务器和端口号 ...
- java读取excel(只是读取)
最近做项目需要读取excel,在网上找了几个,都需要下载各种jar,下载好之后还是不能用,而且还分(xls xlsx)这两种格式, 最后找到个这个,不需要下载jar包,格式通吃,不过只是简单的读取 ...
- centos6.5 源码编译 mysql5.6.21
1.yum安装各个依赖包 [root@WebServer ~]# yum -y install gcc gcc-devel gcc-c++ gcc-c++-devel autoconf* automa ...
- C# Uploadify 文件上传组件的使用
一.页面的构建 1.要引用的JS和CSS <link href="../css/jquery-ui.css" rel="stylesheet" type= ...
- Java集合一
java的集合类主要由两个接口派生而出:Collection && Map 这两个接口是集合框架的根接口 Collection----直接派生:Set(无序集合,元素不可重复) Lis ...
- js中的Function和Object
说到构造器(condtructor).原型链(prototype),说道Function与Object,总要祭出下面这张图 1.Function是最顶层的构造器,Object是最顶层的对象 2.先有的 ...
- flask-session总结
一.session session和cookie的原理和区别: cookie是保存在浏览器上的键值对 session是存在服务端的键值对(服务端的session就是 ...
- jquery获取不了ajax动态添加的内容的解决办法
在HTML页面的一个button <div class="ajaxClick"> <button>内容</button> </div> ...
- null 和 undefined 区别
---恢复内容开始--- 1.在javascipt中,将一个变量赋值为undefined 或 null ,几乎没什么区别. 2. 在if语句中undefined 和 null 都会被自动转成fals ...