砍树

砍树

题目描述

小A在一条水平的马路上种了n棵树,过了几年树都长得很高大了,每棵树都可以看作是一条长度为a[i]的竖线段.由于有的树过于高大,挡住了其他的树,使得另一些树得不到阳光。如果有两棵树i与j,i顶端与j底端连线的倾角大于45度,我们就定义为i挡住了j。现在小A希望将一些树砍低,使得不存在挡住的情况。他想知道总共最少需要砍掉多少长度,请你来帮他计算一下。
注意,如果同一位置有两棵树的话,根据题意,我们只能将这两棵树都砍成高度为0才能保证它们不相互挡住,但是高度为0并不代表这棵树不存在。

格式

输入

第一行一个正整数n,表示有n棵树。
接下来n行,每行两个正整数p[i],a[i],表示一棵树的位置和高度。

输出

输出一个数,表示最少砍断多少长度。

样例

输入

3
0 2
1 2
3 3

输出

3

提示

时间<=1s
内存<=1024KiB

数据限制

对于50%的数据,n<=100;
对于100%的数据,n<=100000,0<p[i],a[i]<=10000。

信息

ID
1003
难度
9
分类
(无)
标签
递交数
1
已通过
1
通过率
100%
上传者