logo AlgoBeat OnlineJudge
登录 注册

#103897. [BZOJ 3897] Power

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: 匿名

题目描述

我们假设小 T 有一个人体耐力上限 ,在月初的时候,小 T 有 的体力。

接下来每一天有一个任务,这个任务小 T 可以付出任意的非负整数体力去完成,并且,每一天的结束的时候,小 T 会增加 的体力。当然体力是不可能超出 的,也就是说,如果当前体力 大于 ,那么恢复完之后的体力依旧是 。毫无疑问,体力是不可能小于 的。

每个任务会有一个价值 ,一个任务的收获就是这个任务的价值乘上付出的体力。

你要帮帮小 T,使他最大化所有任务的收获之和,方便他继续的高富帅!最后,我们的口号是“烧死 GFS”。

输入格式

本题存在多组数据。

第一行一个正整数 ,表示数据的组数。

对于每一组数据,第一行有三个正整数 ,表示的是能量上限,恢复值,和这个月的天数。第二行有 个非负整数表示

输出格式

对于每一组数据,输出一行,即最大化的收获之和。

样例

样例输入 #1

1
5 2 2
2 1

样例输出 #1

12

样例说明

第一天用 的体力,接下来恢复 点体力,再用光。

数据范围与提示

对于 的数据,,所有输入均非负。

By 佚名提供