3891 - 挂饰
时间限制 : 1 秒
内存限制 : 128 MB
JOI君有N个装在手机上的挂饰,编号为1...N。 JOI君可以将其中的一些装在手机上。
JOI君的挂饰有一些与众不同——其中的一些挂饰附有可以挂其他挂件的挂钩。每个挂件要么直接挂在手机上,要么挂在其他挂件的挂钩上。直接挂在手机上的挂件最多有1个。
此外,每个挂件有一个安装时会获得的喜悦值,用一个整数来表示。如果JOI君很讨厌某个挂饰,那么这个挂饰的喜悦值就是一个负数。
JOI君想要最大化所有挂饰的喜悦值之和。注意不必要将所有的挂钩都挂上挂饰,而且一个都不挂也是可以的。
输入
第一行一个整数N,代表挂饰的个数。
接下来N行,第i行(1<=i<=N)有两个空格分隔的整数Ai和Bi,表示挂饰i有Ai个挂钩,安装后会获得Bi的喜悦值。
输出
输出一行一个整数,表示手机上连接的挂饰总和的最大值
样例
输入
5 0 4 2 -2 1 -1 0 1 0 3
输出
5
提示
说明/提示
1\leq N\leq 2000
0\leq Ai\leq N(1\leq i\leq N)
-10^6\leq Bi\leq 10^6(1\leq i\leq N)
来源
JOISC