Submission #968338

#TimeUsernameProblemLanguageResultExecution timeMemory
968338njoopArt Exhibition (JOI18_art)C++14
100 / 100
136 ms19728 KiB
#include <bits/stdc++.h>
#define ll long long
using namespace std;

ll n, l=1, r=1, sum, ans = -1e18, mx = -1e18, mn = 1e18;
pair<ll, ll> arr[500010];

int main() {
    cin.tie(0)->sync_with_stdio(0);
    cin >> n;
    for(int i=1; i<=n; i++) {
        cin >> arr[i].first >> arr[i].second;
    }
    sort(arr+1, arr+n+1);
    for(int i=1; i<=n; i++) {
        mx = max(mx, arr[i].first);
        mn = min(mn, arr[i].first);
        if(sum - (mx - mn) <= 0) {
            mx = arr[i].first;
            mn = arr[i].first;
            sum = arr[i].second;
        } else {
            sum += arr[i].second;
        }
        ans = max(ans, sum-(mx-mn));
    }
    cout << ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...