#dpx. [dp_x]Tower
[dp_x]Tower
问题描述
有 个块,编号为 。对于每个 (),块 的重量为 ,坚固度为 ,价值为 。
Taro 决定通过选择一些 个块并按某种顺序将它们垂直堆叠起来来构建一个塔。在这里,塔必须满足以下条件:
- 每个包含在塔中的块,其上方堆叠的块的重量之和不超过 。
找出塔中所含块的价值的最大可能总和。
约束条件
- 输入的所有值都是整数。
输入
输入以以下格式从标准输入给出:
输出
打印塔中所含块的价值的最大可能总和。
示例输入 1
3
2 2 20
2 1 30
3 1 40
示例输出 1
50
如果顺序从上到下堆叠块 ,则该塔满足条件,总价值为 。
示例输入 2
4
1 2 10
3 1 10
2 4 10
1 6 10
示例输出 2
40
应该按顺序从上到下堆叠块 。
示例输入 3
5
1 10000 1000000000
1 10000 1000000000
1 10000 1000000000
1 10000 1000000000
1 10000 1000000000
示例输出 3
5000000000
答案可能不适合32位整数类型。
示例输入 4
8
9 5 7
6 2 7
5 7 3
7 8 8
1 9 6
3 3 3
4 1 7
4 5 5
示例输出 4
22
应该按顺序从上到下堆叠块 。