钓鱼(POJ1042)
Description
在一条水平路边,有n(2<=n<=100)个钓鱼湖,从左到右编号为1、2、3……、n。佳佳有H(1<=H<=20)个小时的空余时间,他希望用这些时间钓到更多的鱼。他从1号出发,向右走,有选择的在一些湖边停留一定时间(是5分钟的倍数)钓鱼,最后在某一湖边结束钓鱼。佳佳测出从第i个湖到第i+1个湖需要走5×Ti分钟的路,还测出在第i个湖边停留,第一个5分钟可以钓到鱼Fi,以后再每钓5分钟鱼,鱼量减少Di。为了简化问题,佳佳假定没有其他人钓鱼,也不会有其他影响因素影响他钓到期望数量的鱼。请编程求出佳佳最多能钓到的鱼的数量。
Format
Input
第一行一个整数n,表示湖的个数。
第二行一个整数H,表示佳佳的空闲时间。
第三行有n个整数,依次表示每个湖第一个5分钟能钓到鱼的数量。
第四行有n个整数,依次表示以后的每5分钟钓的鱼数量比比前一个5分钟钓的鱼数量减少的鱼量。
第五行有n-1整数,Ti表示由第i个湖到第i+1个湖需要花5×Ti分钟的时间。
Output
输出只有一行,表示佳佳最多能钓到的鱼的数量。
Sample 1
Input
3
1
4 5 6
1 2 1
1 2
Output
35
样例说明
在第一个湖钓15分钟,共钓得4+3+2=9条鱼。
在第二个湖钓10分钟,共钓得5+3=8条鱼。
在第三个湖钓20分钟,共钓得6+5+4+3=18条鱼。
从第一个湖到第二个湖,从第二个湖到第三个湖,共用时间15分钟,共得35条鱼,并且这是最多的数量。