Submission #1108378

#TimeUsernameProblemLanguageResultExecution timeMemory
1108378vjudge1Art Exhibition (JOI18_art)C++17
50 / 100
50 ms10056 KiB
#include <bits/stdc++.h>

#define int int64_t
#define ii pair<int , int> 
#define fi first 
#define se second
#define FOR(i , l , r) for(int i = l ; i <= r ; i++)
#define FORD(i , r , l) for(int i = r ; i >= l ; i--)

using namespace std;

const int N = 2e5;

int n , res;
int pre[N + 2];
priority_queue<int> que;
ii a[N + 2];

signed main()
{
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    cin >> n;
    FOR(i , 1 , n) cin >> a[i].fi >> a[i].se;
    sort(a + 1 , a + n + 1);
    FOR(i , 1 , n) pre[i] = pre[i - 1] + a[i].se;
    que.push(0);
    FOR(i , 1 , n)
    {
        que.push(a[i].fi - pre[i - 1]);
        res = max(res , pre[i] - a[i].fi + que.top());
    }
    cout << res;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...