「一本通 1.1 练习 5」钓鱼
题目描述
在一条水平路边,有 \(n\) 个钓鱼点,从左到右编号为 \(1, 2, \dots, n\)。佳佳有 \(H\) 个小时的空余时间,他希望利用这个时间钓到更多的鱼。他从第 \(1\) 个点出发,向右走,有选择地在一些点停留一定的时间(是 \(5\) 分钟的倍数)钓鱼,最后在某个点结束钓鱼。佳佳从第 \(i\) 个点到第 \(i+1\) 个点需要走 \(5 \times T_i\) 分钟。在某个钓鱼点停留时,第一个 \(5\) 分钟可以钓到 \(F_i\) 条鱼,以后每再钓 \(5\) 分钟,可以钓到的鱼量减少 \(D_i\);若减少后的鱼量小于 \(0\),则减少后的鱼量为 \(0\)。为了简化问题,佳佳假定没有其他人钓鱼,也没有其他因素影响他钓到期望数量的鱼。请编程求出佳佳最多能钓到的数量。
输入格式
第一行一个整数 \(n\),表示钓鱼点的个数。
第二行一个整数 \(H\),表示佳佳的空闲时间(单位:小时)。
第三行 \(n\) 个整数,依次表示每个湖第一个 \(5\) 分钟能钓到的鱼的数量 \(F_i\)。
第四行 \(n\) 个整数,依次表示每个湖每 \(5\) 分钟钓鱼数量比前一个 \(5\) 分钟钓鱼数量减少的数量 \(D_i\)。
第五行 \(n-1\) 个整数,依次表示由第 \(i\) 个湖到第 \(i+1\) 个湖需要花 \(5 \times T_i\) 分钟的路程,即 \(T_i\) 的值。
输出格式
输出只有一行,表示佳佳最多能钓到的数量。
样例
输入
3
1
4 5 6
1 2 1
1 2
输出
35
在第 \(1\) 个湖钓 \(15\) 分钟,共钓得 \(4 + 3 + 2 = 9\) 条鱼;
在第 \(2\) 个湖钓 \(10\) 分钟,共钓得 \(5 + 3 = 8\) 条鱼;
在第 \(3\) 个湖钓 \(20\) 分钟,共钓得 \(6 + 5 + 4 + 3 = 18\) 条鱼;
从第 \(1\) 个湖到第 \(2\) 个湖,从第 \(2\) 个湖到第 \(3\) 个湖,共用时间 \(15\) 分钟,共得 \(35\) 条鱼,并且这是最多的数量。
数据范围与提示
对于 \(100\%\) 的数据,\(2 \leq n \leq 100\),\(1 \leq H \leq 20\)。
注意:时间 \(H\) 的单位是小时,但钓鱼和走路的时间均以 \(5\) 分钟为单位,因此总可用时间为 \(12H\) 个 \(5\) 分钟(因为 \(1\) 小时 = \(12\) 个 \(5\) 分钟)。