#include <iostream>
#include <vector>
#include <unordered_map>
#include <algorithm>
typedef long long ll;
using namespace std;
int main() {
cin.tie() -> sync_with_stdio(0);
ll n;
cin >> n;
vector<pair<ll, ll>> nums(n + 1);
vector<ll> pref(n + 1, 0);
for (auto &p: nums) {
cin >> p.first >> p.second;
}
sort(nums.begin(), nums.end());
for (ll i = 1; i<=n; ++i) {
pref[i] = pref[i - 1] + nums[i].second;
}
ll a = 0;
ll b = 0;
ll res = 0;
for (ll i = 1; i<=n; ++i) {
a = pref[i] - nums[i].first;
b = max(b, nums[i].first - pref[i - 1]);
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... |