题目名称 821. [Freddy] 坏苹果
输入输出 badapple.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 11
题目来源 GravatarMakazeu 于2012-06-15加入
开放分组 全部用户
提交状态
分类标签
贪心
分享题解
通过:7, 提交:19, 通过率:36.84%
Gravatarchenge 100 0.001 s 0.19 MiB Pascal
Gravatar亟隐 100 0.003 s 0.19 MiB Pascal
Gravatarwangyucheng 100 0.003 s 0.35 MiB C++
GravatarMakazeu 100 0.004 s 0.31 MiB C++
GravatarVow Ryan 100 0.009 s 0.27 MiB Pascal
Gravatar稠翼 100 0.066 s 0.10 MiB Pascal
Gravatar稠翼 100 0.081 s 0.14 MiB Pascal
Gravatar亟隐 90 0.001 s 0.19 MiB Pascal
GravatarVow Ryan 90 0.005 s 0.27 MiB Pascal
GravatarVow Ryan 90 0.005 s 0.27 MiB Pascal
关于 坏苹果 的近10条评论(全部评论)
我的思路是枚举结束的苹果树。。
然后就是莫名湖钓鱼问题
GravatarHouJikan
2014-09-02 22:34 3楼
贪心?这不是动归?
Gravatarwangyucheng
2013-10-28 17:29 2楼
读题要仔细,没说必须要在n点结束,n点结束只有27分,如果没有判断在1点结束,只有90分,所以在整个过程中都要更新答案.....
GravatarVow Ryan
2012-10-12 07:23 1楼

821. [Freddy] 坏苹果

★   输入文件:badapple.in   输出文件:badapple.out   简单对比
时间限制:1 s   内存限制:128 MiB
【题目描述】

     Farmer ZYF种了N(2<=N<=25)棵苹果树,排列在一条直线上,从左当右编号为1、2、3、......、N。    由于ZYF很浮躁,每 天都在玩一款名为《軒轅劒外傳:雲之遙(Xuan Yuan Sword:Faraway of Cloud)》的游戏,    导致所有的苹果都快坏了!
    在H(1<=H<=16)个小时后,所有的苹果将会同时坏 掉!    ZYF希望在苹果坏掉之前,摘下尽量多的苹果。    他从苹果树1出发,向右走,有选择的在一些苹果树边停留一段时间摘苹果,最后在某个苹 果树旁结束采摘。    每次采摘苹果需要5分钟。ZYF测出从第i个苹果树到第i+1个苹果树需要走5xTi(0<=Ti<=100)分 钟,    还测出在第i个苹果树边停留,第一次采摘可以摘到苹果Fi(0<=Fi<=100),    以后每摘一次苹果,该苹果树的苹果 减少Di(0<=Di<=100),    也就是说,第二次在该树可摘到(Fi-Di)个苹果,    第3次可摘到(Fi-2*Di)个 苹果......设每个苹果树上的苹果都是无限多的,    当某个苹果树的 摘一次的苹果的数量小于等于0,则该苹果树不可采摘。

请编程求出最多能摘到苹果的数量S。

【输入格式】
第一行两个整数N,M
第二行 N-1个整数 T1,T2,T3,......,Ti-1,Ti。
第三行 N个整数 F1,F2,F3,......,Fi-1,Fi。

第四行 N个整数 D1,D2,D3,......,Di-1,Di。

【输出格式】

一行,一个整数S。(保证S小于2^31-1)样例输入
2 1
1
1 100
1 1

样例输出
1045

【输入输出说明】

有两棵苹果树,一共有1个小时的采摘时间。
只在2号苹果树采摘时能获得最大采摘数量:
从1号苹果树到2号苹果树需要1×5=5分钟;
一共能采摘 [(1*60)-(1*5)] div 5=11次;
第1次在2号苹果树能采摘能采摘到100个苹果;
第2次在2号苹果树能采摘能采摘到99个苹果;
第3次在2号苹果树能采摘能采摘到98个苹果;
......
第11次在2号苹果树能采摘能采摘到90个苹果;
所以一共能采摘到(100+90)*11/2=1045个苹果,没有比这个结果更优了。