《程序设计基础二》类的设计部分练习题目:1432--1446,运算符重载部分练习题目:1447--1461

Problem 1513. -- Byte采蘑菇

1513: Byte采蘑菇

Time Limit: 1 Sec  Memory Limit: 128 MB   64bit IO Format: %lld
Submitted: 208  Accepted: 76
[Submit][Status][Web Board]

Description

元旦回家,Byte在亲戚家里吃到了一种很好吃的蘑菇,据说是长在河堤边柳树上的,第二天Byte决定亲自去采蘑菇,做一个蘑菇干锅作为午餐。柳树整齐的长在笔直的河堤边,每棵柳树上都长有若干蘑菇。假设Byte的起始坐标为x=0,Byte的左边坐标值为负数,右边坐标值为正数。开始的时候Byte可以选择向左走或者向右走,但是一旦Byte遇到一棵没有被采摘过的树,Byte会先把所有蘑菇摘下来,然后转换一个方向继续前进。即如果开始向左走,在坐标x=-1处遇到一棵没有被采摘过的树,Byte会先摘下所有蘑菇,然后向右走。问Byte最多可以摘到多少蘑菇。

Input

多组测试数据。

第一行输入一个整数n(1<=n<=100)代表河边总共有多少棵树(保证x=0处不会有树)。
后面n行每行有两个整数xi, ai ( - 100000 ≤ xi ≤ 100000, xi ≠ 0, 1 ≤ ai ≤ 100000),代表柳树的坐标以及每棵柳树上有多少蘑菇。

Output

输出Byte最多可以摘到多少蘑菇。

Sample Input

3
-2 2
1 4
-1 3
3
1 9
3 5
7 10

Sample Output

9
9

Author

Byte

[Submit][Status][Web Board]