题目名称 1748. 鱼塘钓鱼
输入输出 fishing.in/out
难度等级 ★★☆
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试数据 10
题目来源 Gravatarsyzhaoss 于2025-04-25加入
开放分组 全部用户
提交状态
分类标签
贪心 优先队列
分享题解
通过:0, 提交:0, 通过率:0%
关于 鱼塘钓鱼 的近10条评论(全部评论)

1748. 鱼塘钓鱼

★★☆   输入文件:fishing.in   输出文件:fishing.out   简单对比
时间限制:1 s   内存限制:512 MiB

【题目描述】

有$n(n\leq 100)$个鱼塘排成一排,每个鱼塘中有一定数量的鱼,例如:$n=5$时,如下表:

即:在第1个鱼塘中钓鱼第1小时内可钓到10条鱼,第2小时内只能钓到8条鱼,……,第5小时以后再也钓不到鱼了。从第1个鱼塘到第2个鱼塘需要3小时,从第2个鱼塘到第3个鱼塘需要5小时,…… 

给出一个截止时间$t(t\leq 1000)$,设计一个钓鱼方案,从第1个鱼塘出发,希望能钓到最多的鱼。

假设能钓到鱼的数量仅和已钓鱼的次数有关,且每次钓鱼的时间都是整数小时。

注意:某个池塘第一小时能钓到的鱼的数量实际就是第一次在这儿能钓到的鱼的数量。

【输入格式】

输入共5行。

第1行一个整数$n$,表示鱼塘的数目。

第2行为第1小时各个鱼塘能钓到的鱼的数量,每个数据之间用一空格隔开。

第3行为每过1小时各个鱼塘钓鱼数的减少量,每个数据之间用一空格隔开。

第4行为当前鱼塘到下一个相邻鱼塘需要的时间。

第5行为截止时间$t$。

【输出格式】

输出仅一个整数,表示你的方案能钓到的最多的鱼,输入保证答案在int范围内。

【样例输入】

5
10 14 20 16 9
2 4 6 5 3
3 5 4 4
14

【样例输出】

76

【样例解释】

前2小时在1号池塘钓鱼,钓到10+8=18条;

接下来用3小时前往2号池塘,在2号池塘钓2小时,钓到14+10=24条;

然后用5小时前往3号池塘,在3号池塘钓2小时,钓到20+14=34条。