玩石头
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Alex喜欢玩石头,而且喜欢造石头塔,但是石头的形状往往不规则,上面的石头太高太沉了就容易倒,每个石头有不同的时髦值,你能帮助Alex垒一个最漂亮的石头塔吗?

形式化的说,我们共有n块石头,每个石头有两种属性,重量和时髦值,Alex从n个石头中选择了一些石头,垒了一个石头塔,每层有一个石头,你要保证每个石头上面的石头重量之和严格小于当前的这块石头的重量,问在满足这个条件下,石头塔的最大时髦值之和是多少?

输入描述:

第一行为n,代表石头的个数。

第二行每行有两个整数,代表第i个石头的重量和时髦值。

输出描述:

请输出一个整数,表示石头塔的最大时髦值。
示例1

输入

复制
2
1 3
2 4

输出

复制
7