#include <iostream>
#include <vector>
#include <algorithm>
typedef long long ll;
using namespace std;
signed main() {
cin.tie() -> sync_with_stdio(0);
ll n;
cin >> n;
// {size, val}
vector<pair<ll, ll>> nums(n + 1);
for (ll i = 1; i<=n; ++i) {
cin >> nums[i].first >> nums[i].second;
}
sort(nums.begin(), nums.end());
nums[0] = {-1e9, 0};
vector<ll> pref(n + 1, 0);
for (ll i = 1; i<=n; ++i) {
pref[i] = pref[i - 1] + nums[i].second;
}
ll a = 0, b = 0, res = 0;
for (ll i = 1; i<=n; ++i) {
a = max(a, nums[i].first - pref[i - 1]);
b = pref[i] - nums[i].first;
res = max(res, a + b);
}
cout << res << '\n';
}
# | 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... |