洛谷 P2430 严酷的训练
题目背景
Lj的朋友WKY是一名神奇的少年,在同龄人之中有着极高的地位。。。
题目描述
他的老师老王对他的程序水平赞叹不已,于是下决心培养这名小子。
老王的训练方式很奇怪,他会一口气让WKY做很多道题,
要求他在规定的时间完成。
而老王为了让自己的威信提高,自己也会把这些题都做一遍。
WKY和老王都有一个水平值,他们水平值的比值和做这些题
所用时间的比值成反比。比如如果WKY的水平值是1,老王的水平值是2
那么WKY做同一道题的时间就是老王的2倍。
每个题目有他所属的知识点,这我们都知道,
比如递归,动归,最短路,网络流……
在这里我们不考虑这些事情,我们只知道他们分别是知识点1,知识点2……
每一个知识点有他对应的难度,比如动态规划经常难于模拟……
而每一个同一知识点下的题目,对于WKY来讲,都是一样难的。
而做出每一道题,老王都有其独特的奖励值。
而奖励值和题目的知识点没有必然联系。
现在WKY同学请你帮忙,计算
在老王规定的时间内,
WKY所能得到最大奖励值是多少 。
输入输出格式
输入格式:
输入文件包括以下内容:
第一行:
WKY的水平值和老王的水平值。
数据保证WKY的水平值小于老王的水平值(哪怕它不现实),
且老王的水平值是WKY的水平值的整数倍。
第二行:
题目的总数m和知识点的总数n。
第三行:
n个整数。第i个整数表示 老王在做第i个知识点的题目所需的时间。
接下来有m行数每一行包括两个整数p,q。
p表示该题目所属的知识点,q表示该题目对应的奖励值。
最后一行是规定的时间。
输出格式:
输出文件只有一行,表示能到得到的最大奖励值。
输入输出样例
说明
对于100%的数据,题目总数<=5000,规定时间<=5000
思路:01背包。
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n,m,v;
int f[];
int top1,top2;
int t[],cost[],w[];
int main(){
scanf("%d%d",&top1,&top2);
scanf("%d%d",&m,&n);
for(int i=;i<=n;i++) scanf("%d",&t[i]),t[i]=top2/top1*t[i];
for(int i=;i<=m;i++)
scanf("%d%d",&cost[i],&w[i]);
scanf("%d",&v);
for(int i=;i<=m;i++)
for(int j=v;j>=t[cost[i]];j--)
f[j]=max(f[j],f[j-t[cost[i]]]+w[i]);
cout<<f[v];
}
洛谷 P2430 严酷的训练的更多相关文章
- 【洛谷 P2430 严酷的训练】
题目背景 Lj的朋友WKY是一名神奇的少年,在同龄人之中有着极高的地位... 题目描述 他的老师老王对他的程序水平赞叹不已,于是下决心培养这名小子. 老王的训练方式很奇怪,他会一口气让WKY做很多道题 ...
- 洛谷P2430 严酷的训练
第一眼看这道题...啊哈,啥??? 仔细看一看,发现:诶, 这不是01背包吗? 两人水平值的比值*老王做题用时 可以算出WKY做每道题的用时. 那么每道题的p就可以转换成费用c[i], 价值q就是w[ ...
- 【洛谷p2430】严酷的训练
(这个题有一个很神奇的地方) 严酷的训练[传送门] 算法标签(显然01背包了最近一直在练) (他居然没写……) 这个题啊,试了好几遍没a 最后发现在第二层循环的时候应该是j>=rqyt[p[i] ...
- AC日记——严酷的训练 洛谷 P2430
严酷的训练 思路: 背包: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 5005 int n,m,bi[m ...
- P2430 严酷的训练 题解
题目背景 Lj的朋友WKY是一名神奇的少年,在同龄人之中有着极高的地位... 题目描述 他的老师老王对他的程序水平赞叹不已,于是下决心培养这名小子. 老王的训练方式很奇怪,他会一口气让WKY做很多道题 ...
- P2430严酷的训练
传送 这个题的题干很长,长到令人恶心 这个题的p乍一看好像没有卵用,但其实他很有用(废话).这里的“费用”不再是tw[i](wky做第i道题的时间),而是tw[p[i]](wky做第i道题所对应的知识 ...
- luogu P2430 严酷的训练 题解
By:Soroak 知识点:DP 思路:就是一道简单的DP 一开始我想用二维数组做 做着做着发现,没有那么难啊啊啊 完全可以用一维数组来做 我们先开两个一维数组来存每个题目的时间 一个是老王的时间,另 ...
- 洛谷P1193 洛谷团队训练VS传统团队训练
题目背景 "在中学的信息学教育领域,洛谷无疑是一个相当受欢迎的辅助网站.同时有百余所学校正在通过洛谷进行信息学竞赛(以后简称OI)的教育.洛谷之所以如此受欢迎,是因为洛谷创新的将OI教育的几 ...
- 洛谷 P1193 洛谷团队训练VS传统团队训练
P1193 洛谷团队训练VS传统团队训练 题目背景 “在中学的信息学教育领域,洛谷无疑是一个相当受欢迎的辅助网站.同时有百余所学校正在通过洛谷进行信息学竞赛(以后简称OI)的教育.洛谷之所以如此受欢迎 ...
随机推荐
- 玩转 Jupyter Notebook (CentOS)
Jupyter Notebook 简介 Jupyter Notebook 是一个开源的 Web 应用程序,可以用来创建和共享包含动态代码.方程式.可视化及解释性文本的文档.其应用于包括:数据整理与转换 ...
- 【Uva 1630】Folding
[Link]: [Description] 你能对字符串进行压缩的操作; 即把连续出现的相同的子串改成它出现的次数+这个最基本的字符串的形式; 问你这个字符串最短能被压缩得多短; [Solution] ...
- 【玲珑杯 round#18 B】图论你先敲完模板
[Link]:http://www.ifrog.cc/acm/problem/1146 [Description] [Solution] 设f[i]表示在第i个点休息的话最少需要的体力值; f[i]= ...
- iOS项目开发实战——iOS网络编程获取网页Html源码
现在我们身处互联网的时代.不论什么一个软件或是App,都会或多或少与网络打交道,并不断发生数据交互.一个没有涉及网络编程的应用会显得比較low,这里我们将会開始使用Swift开发iOS应用,而且主要来 ...
- Swift Standard Library Reference.pdf
Swift Standard Library Reference.pdf 下载地址 http://download.csdn.net/detail/swifttrain/7446331 自己的Mark ...
- Xposed框架之函数Hook学习
作者:Fly2015 Xposed是Android下Java层的开源Hook框架类似的有cydiasubstrate框架而且据说cydiasubstrate框架能实现Android的Java层和Nat ...
- 如何实现对网站页面访问量的统计(javaweb和php)
如何实现对网站页面访问量的统计(javaweb和php) 一.总结 一句话总结:其实很简单啦,每访问一次那个页面对应的index函数(控制器中的那个函数)访问次数就加1就可以了. 1.javaweb中 ...
- Mysql主从级联复制
场景1 如果主节点已经运行了一段时间,且有大量数据时,如何配置并启动slave节点 通过备份恢复数据至从服务器· 复制起始位置为备份时,二进制日志文件及其POS: Mater 设置 1) 修改配置文件 ...
- POJ 2459 模拟
题意: 思路: 按照题意模拟即可 //By SiriusRen #include <cstdio> using namespace std; int c,f1,f2,d,xx,yy,vis ...
- Elasticsearch之源码编译
前期博客 Elasticsearch之下载源码 步骤 (1)首先去git下载源码 https://github.com/elastic/elasticsearch/tree/v2.4.3 下载下来,得 ...