贪心
//转载至http://blog.ac521.org/?p=614
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream>
using namespace std;
struct node{
int x, y;
}num[100005];
bool cmp(node a, node b){
return a.x + a.y < b.x + b.y || a.x + a.y == b.x + b.y && a.x < b.x;
}
int main(){
int n, m, i, j, k;
while(~scanf("%d", &n)){
for(i = 0; i < n; i ++){
scanf("%d%d", &num[i].x, &num[i].y);
}
sort(num, num + n, cmp);
__int64 sum = 0, maxx = -10, m;
for(i = 0; i < n; i ++){
m = sum - num[i].y;
if(m > maxx) maxx = m;
sum += num[i].x;
}
if(maxx < 0) printf("0\n");
else printf("%I64d\n", maxx);
}
}