Submission #875067

#TimeUsernameProblemLanguageResultExecution timeMemory
875067misu2005Art Exhibition (JOI18_art)C++17
100 / 100
433 ms24916 KiB
#include <iostream>
#include <algorithm>
#include <climits>

using namespace std;

struct ceva {
    long long sz, val;
} v[500005];

bool cmp(ceva x, ceva y) {
    return x.sz < y.sz;
}

long long sp[500005], pre = LLONG_MAX, maxim;
int n;

int main()
{
    cin >> n;
    for (int i = 1; i <= n; i++)
        cin >> v[i].sz >> v[i].val;
    sort(v+1, v+n+1, cmp);

    for (int i = 1; i <= n; i++) {
        sp[i] = sp[i-1] + v[i].val;
        pre = min(pre, sp[i-1] - v[i].sz);
        maxim = max(maxim, sp[i] - v[i].sz - pre);
    }
    cout << maxim;

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...