Submission #875643

#TimeUsernameProblemLanguageResultExecution timeMemory
875643Beerus13Art Exhibition (JOI18_art)C++14
100 / 100
157 ms24916 KiB
#include <bits/stdc++.h>
using namespace std;
#define ll long long 
#define pll pair<ll, ll> 
#define fi first
#define se second
const int ar = 5e5 + 5;

int n;
pll a[ar];
ll Max[ar];

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);
    cin >> n;
    for(int i = 1; i <= n; ++i) cin >> a[i].fi >> a[i].se;
    sort(a + 1, a + n + 1);
    ll sum = 0, ans = -1e18;
    for(int i = 1; i <= n; ++i) {
        sum += a[i].se;
        Max[i] = sum - a[i].fi;
    }
    Max[n + 1] = -1e18;
    for(int i = n; i; --i) Max[i] = max(Max[i], Max[i + 1]);
    sum = 0;
    for(int i = 1; i <= n; ++i) {
        ans = max(ans, Max[i] + a[i].fi - sum);
        sum += a[i].se;
    }
    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...