#P646. OJ作业

OJ作业

题目描述

注册CodesOnline账号是,系统就会规划好所有OJ题目,每个OJ题目如果在规定的时间内交上来的话才有OJ积分。每个OJ题目的截止日期和OJ积分可能是不同的。例如如果一个OJ题目的OJ积分为10,要求在6天内提交,那么要想拿到这10积分,就必须在第6天结束前交。

每个题目的完成时间都是只有一天。例如,假设有 7 次题目的积分和完成时间如下:

| OJ题目号 | 期限 | OJ积分| | 1 | 1 | 6| | 2 | 1 | 7| | 3 | 3 | 2| | 4 | 3 | 1| | 5 | 2 | 4| | 6 | 2 | 5| | 7 | 6 | 1|

最多可以获得15积分,其中一个完成题目的次序为2,6,3,1,7,5,4,注意可能还有其他方法。

你的任务就是找到一个完成题目的顺序获得最多的OJ积分。

输入格式

第一行一个X整数,表示题目的数量;

接下来X行,每行包括两个整数,第一个整数表示题目的完成期限,第二个数表示该题目的积分。

输出格式

输出一个整数表示可以获得的最大积分。保证答案不超过C/C++int范围。

样例

输入

7
1 6
1 7
3 2
3 1
2 4
2 5
6 1

输出


15

说明/提示

【数据范围】

对于20%的数据,X≤10^3;

对于40%的数据,X≤10^4;

对于60%的数据,X≤10^5;

对于100%的数据,X≤10^6,题目的完成期限均小于7×10^5。

题目来源

奥赛一本通改编题目