Submission #716592

#TimeUsernameProblemLanguageResultExecution timeMemory
716592TheSahibArt Exhibition (JOI18_art)C++17
0 / 100
1 ms300 KiB
#include <bits/stdc++.h>

#define ll long long
#define oo 1e9
#define pii pair<ll, ll>

using namespace std;



int main()
{
    int n; cin >> n;
    pii arr[n + 1];
    arr[0] = {0, 0};
    for (int i = 1; i <= n; i++)
    {
        cin >> arr[i].first >> arr[i].second;
    }
    sort(arr + 1, arr + n + 1);
    ll pre[n + 1];
    pre[0] = 0;
    for (int i = 1; i <= n; i++)
    {
        pre[i] = pre[i - 1] + arr[i].second;
    }
    for (int i = 0; i < n; i++)
    {
        pre[i + 1] -= arr[i + 1].first;
    }
    multiset<ll> s;
    for (int i = 0; i < n; i++)
    {
        s.insert(pre[i + 1]);
    }
    ll ans = 0;
    for (int i = 1; i <= n; i++)
    {
        auto itr = prev(s.end());
        ans = max(ans, (*itr) - (pre[i - 1] + arr[i - 1].first) + arr[i].first);
        s.erase(itr);
    }
    cout << ans << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...