VIJOS-P1625 精卫填海
JDOJ 1587 VIJOS-P1625 精卫填海
https://neooj.com/oldoj/problem.php?id=1587
洛谷 P1510 精卫填海
https://www.luogu.org/problem/P1510
Description
Input
Output
Sample Input
Sample Output
HINT
【数据范围】 对于20%的数据,0< n< =50。 对于50%的数据,0< n< =1000。 对于100%的数据,0< n< =10000,所有读入的数均属于[0,10000],最后结果< =c。
01背包的一道变形题。
我个人认为这道题状态的设置是重中之重。
我们知道,01背包的模型设计到体积和价格。但是01背包的几乎所有题都不会裸露地考你这些内容。它们经常会出现得特别隐蔽。什么体积和体力啊,各种奇奇怪怪得量啊,我们在做这些题得时候,必须要明确,哪个是01背包模型中得体积,哪个是价格。
这道题我的思路是这样的。
(开二维肯定爆炸了,01背包的最终优化也是开1维)
这道题体力是“体积”,体积是“价值”。
为什么呢?因为精卫一共只剩下了c的体力,它要求求体力剩余最大值,就是求满足填完体积之后最小的体力花费。
这就可以了。
然后状态就被我们设置出来了,最后的转移那不是简单得hin么?
代码:
#include<cstdio>
#include<algorithm>
using namespace std;
int V,n,c,tot;
int v[],w[];
int dp[];
int main()
{
scanf("%d%d%d",&V,&n,&c);
for(int i=;i<=n;i++)
{
scanf("%d%d",&v[i],&w[i]);
tot+=v[i];
}
if(tot<V)
{
printf("Impossible");
return ;
}
for(int i=;i<=n;i++)
for(int j=c;j>=w[i];j--)
dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
for(int i=;i<=V;i++)
if(dp[i]>=V)
{
printf("%d",c-i);
return ;
}
printf("Impossible");
return ;
}
VIJOS-P1625 精卫填海的更多相关文章
- 【BZOJ 1061】【Vijos 1825】【NOI 2008】志愿者招募
http://www.lydsy.com/JudgeOnline/problem.php?id=1061 https://vijos.org/p/1825 直接上姜爷论文... #include< ...
- vijos P1915 解方程 加强版
背景 B酱为NOIP 2014出了一道有趣的题目, 可是在NOIP现场, B酱发现数据规模给错了, 他很伤心, 哭得很可怜..... 为了安慰可怜的B酱, vijos刻意挂出来了真实的题目! 描述 已 ...
- vijos P1780 【NOIP2012】 开车旅行
描述 小\(A\)和小\(B\)决定利用假期外出旅行,他们将想去的城市从\(1\)到\(N\)编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市\(i\)的海拔高度为 ...
- 【BZOJ 2541】【Vijos 1366】【CTSC 2000】冰原探险
http://www.lydsy.com/JudgeOnline/problem.php?id=2541 https://vijos.org/p/1366 loli秘制大爆搜_(:з」∠)_坑了好久啊 ...
- 【BZOJ 1065】【Vijos 1826】【NOI 2008】奥运物流
http://www.lydsy.com/JudgeOnline/problem.php?id=1065 https://vijos.org/p/1826 好难的题啊TWT ∈我这辈子也想不出来系列~ ...
- [题解]vijos & codevs 能量项链
a { text-decoration: none; font-family: "comic sans ms" } .math { color: gray; font-family ...
- [题解]vijos 运输计划
Description 公元 2044 年,人类进入了宇宙纪元.L 国有 n 个星球,还有 n−1 条双向航道,每条航道建立在两个星球之间,这 n−1 条航道连通了 L 国的所有星球.小 P 掌管一家 ...
- vijos P1448 校门外的树
描述 校门外有很多树,有苹果树,香蕉树,有会扔石头的,有可以吃掉补充体力的--如今学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的树,现有两个操作:\(K=1\),读入\(l, ...
- [vijos P1083] 小白逛公园
不知怎地竟有种错觉此题最近做过= =目测是类似的?那道题貌似是纯动归? 本来今晚想做两道题的,一道是本题,一道是P1653疯狂的方格取数或NOI08 Employee,看看现在的时间目测这个目标又达不 ...
- Vijos p1892 树上的最大匹配 树形DP+计数 被卡常我有特殊技巧heheda
https://vijos.org/p/1892 此题需要手动开栈: <<; //256MB char *p=(char*)malloc(size)+size; __asm__(" ...
随机推荐
- js支持装饰器
vscode中使用装饰器不报错 { "compilerOptions": { "experimentalDecorators": true } } yarn a ...
- 43 树莓派安装pytorch
狗狗 https://www.pytorchtutorial.com/pytorch-c-api-4-cat-dog-classifier-2/ 鲜花分类器 https://www.pytorchtu ...
- [日常] NOI前划水日记
NOI前划水日记 开坑记录一下每天的效率有多低 5.24 早上被春哥安排了一场NEERC(不过怎么是qualification round啊) 省队势力都跑去参加THU/PKU夏令营了...剩下四个D ...
- VMware虚拟机安装Centos7后设置静态ip
VMware虚拟机安装Centos7后设置静态ip 1. 先设置虚拟机的网络,打开虚拟网络编辑器: 2. 选择Vm8 234都要勾选 3. 打开NAT设置,看到123,待会要用. 4. 打开虚拟机服务 ...
- multer 基础教程(中文版)
此文档于2016年10月3日翻译时multer的版本是1.2.0,它可能不是最新的! 甚至可能存在翻译错误!你可能需要阅读原版英语README 此文档仅供参考! Multer Multer 是一个 n ...
- 十二、深入理解Java内存模型
深入理解Java内存模型 [1]CPU和缓存的一致性 我们应该都知道,计算机在执行程序的时候,每条指令都是在CPU中执行的,而执行的时候,又免不了要和数据打交道.而计算机上面的数据,是存放在主存当 ...
- 关于 Paket
参考地址:https://fsprojects.github.io/Paket/editor-support.html 1. 安装 Paket for Visual Studio,一个类似于 Nuge ...
- Kubernetes 安全概念详解
Kubernetes 安全框架 API 认证三关 • 访问K8S集群的资源需要过三关:认证.鉴权.准入控制• 普通用户若要安全访问集群API Server,往往需要证书.Token 或者用户名+密码 ...
- WebApplicationInitializer启动分析
从Servlet 3.0 开始Tomcat已经支持注解式的配置.了解下,在注解的配置方式下,Web是怎样启动起来的. 通过注解配置一个Web应用 下面是一个通过注解实现一个简单的Web应用 publi ...
- 基于Spark的电影推荐系统(推荐系统~1)
第四部分-推荐系统-项目介绍 行业背景: 快速:Apache Spark以内存计算为核心 通用 :一站式解决各个问题,ADHOC SQL查询,流计算,数据挖掘,图计算 完整的生态圈 只要掌握Spark ...