Submission #1302681

#TimeUsernameProblemLanguageResultExecution timeMemory
1302681hectormedranoArt Exhibition (JOI18_art)C++20
0 / 100
1 ms1024 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

int main() {
	ll N, ans;
    cin>>N;
    vector<ll> S(N+1), MX(N+1);
    vector<pair<ll, ll>> AB(N+1);
    AB[0].first = AB[0].second = 0;
    MX[N] = ans = -1e18;
    for(ll i=1;i<=N;i++){
        cin>>AB[i].first>>AB[i].second;
    }
    sort(AB.begin(), AB.end());
    for(ll i=1;i<=N;i++){
        S[i] = AB[i].second + S[i-1];
    }
    for(ll i=N-1;i>0;i--){
        MX[i] = max(MX[i+1], S[i] - AB[i].first);
    }
    for(ll i=1;i<=N;i++){
        ans = max(ans, AB[i].first - S[i-1] + MX[i]);
    }
    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...