时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld
题目描述
现在小w正在玩一款经典游戏——大鱼吃小鱼。
游戏规则如下:玩家操控一条初始重量为

的鱼,它的目标是吃掉所有
不超过自身当前重量的鱼。每当吃掉一条重量为

的鱼,那么自身重量也会立即增长

。
在游戏过程中,共会陆续出现

条鱼。其中第

条鱼重

,其出现时间段为
%7D)
,即这条鱼会在时刻

出现,并在时刻

前消失
(包含
但不包含
)。只有当前时刻位于
%7D)
时,小w才能操作自己的鱼去吃掉它。
鉴于小w的手速非凡,吃鱼的耗时可以忽略不计。不过最近他懒癌犯了,因此他打算只选择某一时刻进行捕食,并最大化他的鱼的重量。请计算他的鱼可能达到的最大重量。
输入描述:
第一行给出一个整数
,表示数据组数。
对于每组测试数据:
第一行给出两个整数
,表示鱼的总数与小w鱼的初始重量。
后面
行,每行为三个整数
。
输出描述:
一个整数,为小w的鱼可能达到的最大重量。
示例1
输入
复制
2
2 17
3 4 9
9 11 8
4 1
1 2 2
2 4 1
3 5 2
4 5 3
说明
第一组样例中,小w鱼的初始重量为17,第一条鱼出现时间段为
%7D)
,重量

;
第二条鱼出现时间段为
%7D)
,重量

。显然选择
%7D)
内的任意时刻进行捕食最优。
示例2
输入
复制
1
10 20
13 14 41
10 29 3
3 12 25
10 22 69
12 22 11
14 24 34
18 35 6
5 15 59
8 9 21
18 22 41