#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pll pair<ll, ll>
#define fi first
#define se second
ll N, ps[500100];
pll a[500100];
int main() {
cin >> N;
for (int i = 1; i <= N; i++) {
cin >> a[i].fi >> a[i].se;
}
sort(a+1, a+N+1);
ps[0] = 0;
for (int i = 1; i <= N; i++) {
ps[i] = ps[i-1] + a[i].se;
}
ll ans = a[1].se;
ll start = 1;
for (int i = 1; i <= N; i++) {
if (ps[i]-ps[start-1] - (a[i].fi-a[start].fi) >= a[i].se) {
ans = max(ans, ps[i]-ps[start-1] - (a[i].fi-a[start].fi));
} else {
ans = max(ans, a[i].se);
start = i;
}
}
cout << ans << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |