题目描述

话说发源于小朋友精心设计的游戏被电脑组的童鞋们藐杀之后非常不爽,为了表示安慰和鼓励,VIP999决定请他吃一次“年年大丰收”,为了表示诚意,他还决定亲自去钓鱼,但是,因为还要准备2013NOIP,z老师只给了他H(1<=H<=16)个小时的空余时间,假设有N(2<=n<=25)个鱼塘都在一条水平路边,从左边到右编号为1、2、3、。。。、n)。VIP是个很讲究效率的孩子,他希望用这些时间钓到尽量多的鱼。他从湖1出发,向右走,有选择的在一些湖边停留一定的时间钓鱼,最后在某一个湖边结束钓鱼。他测出从第I个湖到I+1个湖需要走5*ti分钟的路,还测出在第I个湖边停留,第一个5分钟可以钓到鱼fi,以后再每钓5分钟鱼,鱼量减少di。为了简化问题,他假定没有其他人钓鱼,也不会有其他因素影响他钓到期望数量的鱼。请编程求出能钓最多鱼的数量。

输入输出格式

输入格式:

第一行:湖的数量n。

第二行:时间h(小时)。

第三行:n个数,f1,f2,…fn。

第四行:n个数,d1,d2,….dn。

第五行:n-1个数,t1,t2,….tn-1

输出格式:

一个数,所能钓鱼的最大数量。

输入输出样例

输入样例#1:

2
1
10 1
2 5
2
输出样例#1:

31
/*
据说这是贪心非常经典的题,然而蒟蒻不会
首先我们可以知道这个人不会走回头路,因为走回头路还不如钓完再往前走并且如果我们假设这个人可以瞬移的话,他每时刻都要选可以钓鱼的数量最大的湖,所以我们假设ans[i]为他只在前i个湖中钓鱼所得到的最大鱼的数量,先把路径减掉,每次找鱼数量最大的湖。
貌似可以优先队列优化,然而数据太弱没有必要
*/
#include<cstdio>
#include<iostream>
#define M 30
using namespace std;
int f[M],f2[M],d[M],t[M],ans[M],n,h;
void init()
{
scanf("%d%d",&n,&h);
for(int i=;i<=n;i++)
scanf("%d",&f[i]);
for(int i=;i<=n;i++)
scanf("%d",&d[i]);
for(int i=;i<n;i++)
scanf("%d",&t[i]);
h*=;
}
int main()
{
freopen("jh.in","r",stdin);
init();
for(int i=;i<=n;i++)//设在前i个鱼池中钓鱼
{
int hp=h;
for(int j=;j<i;j++)//让人可以瞬移
hp-=t[j]*;
for(int j=;j<=i;j++)
f2[j]=f[j];
while(hp>)//如果时间不够,结束
{
int a=;
for(int j=;j<=i;j++)//找鱼数量最大的湖
if(f2[j]>f2[a])a=j;
ans[i]+=f2[a];
hp-=;
if(f2[a]>d[a])f2[a]-=d[a];
else f2[a]=;
if(!a)break;//如果湖里没有鱼了,结束
}
}
int tot=;
for(int i=;i<=n;i++)
tot=max(tot,ans[i]);
printf("%d",tot);
return ;
}

钓鱼(洛谷 P1717)的更多相关文章

  1. 钓鱼 洛谷p1717

    题目描述 话说发源于小朋友精心设计的游戏被电脑组的童鞋们藐杀之后非常不爽,为了表示安慰和鼓励,VIP999决定请他吃一次“年年大丰收”,为了表示诚意,他还决定亲自去钓鱼,但是,因为还要准备2013NO ...

  2. 洛谷P1717 钓鱼

    P1717 钓鱼 41通过 116提交 题目提供者该用户不存在 标签贪心 难度提高+/省选- 提交该题 讨论 题解 记录 最新讨论 暂时没有讨论 题目描述 话说发源于小朋友精心设计的游戏被电脑组的童鞋 ...

  3. P1717 钓鱼 洛谷

    https://www.luogu.org/problem/show?pid=1717 题目描述 话说发源于小朋友精心设计的游戏被电脑组的童鞋们藐杀之后非常不爽,为了表示安慰和鼓励,VIP999决定请 ...

  4. 洛谷 P1717 钓鱼

    题目描述 话说发源于小朋友精心设计的游戏被电脑组的童鞋们藐杀之后非常不爽,为了表示安慰和鼓励,VIP999决定请他吃一次“年年大丰收”,为了表示诚意,他还决定亲自去钓鱼,但是,因为还要准备2013NO ...

  5. 洛谷 P1717 钓鱼 题解

    每日一题 day46 打卡 Analysis 首先通过题目我们不难发现,为了得到最优解,那么就不能把时间浪费在路上,也就是说不能走回头路.然后很容易可以发现,在每个时刻在不同的鱼塘钓到的鱼的数量是不同 ...

  6. 【洛谷P1717】钓鱼

    题目大意:给定 N 个位置,每个位置有一个答案贡献值,在一个位置加了一次该位置的答案贡献值之后,该值会减掉一部分,从一个位置移动到另一个位置需要花费一定的时间,问:给定 M 单位的时间,如何移动使得答 ...

  7. 洛谷1640 bzoj1854游戏 匈牙利就是又短又快

    bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...

  8. 洛谷P1352 codevs1380 没有上司的舞会——S.B.S.

    没有上司的舞会  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond       题目描述 Description Ural大学有N个职员,编号为1~N.他们有 ...

  9. 洛谷P1108 低价购买[DP | LIS方案数]

    题目描述 “低价购买”这条建议是在奶牛股票市场取得成功的一半规则.要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买:再低价购买”.每次你购买一支股票,你必须用低于你上次购买它的价格购买它 ...

随机推荐

  1. poj3262 Protecting the Flowers

    思路: 简单贪心,每次选择性价比最高的. 实现: #include <iostream> #include <cstdio> #include <algorithm> ...

  2. js中不容小觑的var声明

    在学习vue相关课程中,有一次跟着老师敲代码,写出了如下代码: var Child = { template:`<div @click='handleClick'><slot> ...

  3. MongoDB部署、使用、监控及调优

    MongoDB部署 系统环境:CentOS7   下载地址:http://mirrors.163.com/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD ...

  4. Qt和Cocoa混合编程

    https://el-tramo.be/blog/mixing-cocoa-and-qt/

  5. [转]Qt 5.5 操作 Excel 的速度 效率问题

    转自:http://blog.csdn.net/li494816491/article/details/50274305 1. QAxObject *_excelObject1 =newQAxObje ...

  6. dede网站目录权限设置

    如果你的网站数据十分重要(那种两天就能弄好的垃圾站就算了),建议按本文所说的安全步骤进行严格的设置.1.目录权限 我们不建议用户把栏目目录设置在根目录, 原因是这样进行安全设置会十分的麻烦, 在默认的 ...

  7. 原创:四种Linux系统开机启动项优命令超给力超详细详解

    老葵花哥哥又开课了 接下来是你们的齐天大圣孙悟空给你们带来的详细版Linux系统开机启动优化四种命令 第一种方法是很正常的 第二种有点难理解 第三种来自我的一个奇思妙想 本文档秉承 不要钱也不要臀部的 ...

  8. github 下载全部项目

    从github下载资料过程中,有些项目含有子模块,有时通过git clone 或者下载zip方式项目可能会缺少文件,因此需要执行 git submodule update --init --recur ...

  9. Must set property 'expression' before attempting to match

    因为这个问题没有直接指向问题的地点, 所以找起来不是很容易. 但是如果找不到, 这个错就会一直都存在. 原因分析: 在使用切面编程的时候, 没有把切入点配置全面 解决方法: 在before, afte ...

  10. merge dict key

    #!/usr/local/python # -*- coding:utf-8 -*-user_dict = {'python': 23, 'Python': 51, '机器':10, 'PYTHON' ...