Submission #520161

#TimeUsernameProblemLanguageResultExecution timeMemory
520161ddy888Art Exhibition (JOI18_art)C++17
100 / 100
204 ms24792 KiB
#undef _GLIBCXX_DEBUG
#include <bits/stdc++.h>
using namespace std;
#define fast ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define int long long 
#define pb push_back
#define fi first
#define si second
#define ar array
typedef pair<int,int> pi;
typedef tuple<int,int,int> ti;  
void debug_out() { cerr << endl; }
template <typename Head, typename... Tail>
void debug_out(Head H, Tail... T) {cerr << " " << to_string(H);debug_out(T...);}
#define debug(...) cerr << "[" << #__VA_ARGS__ << "]:", debug_out(__VA_ARGS__)

int N, ans, sum[500010], mn = (1<<30);
pi A[500010];

// S - (Amax - Amin) = Sr - Ar - (Sl-1 - Al)

signed main() {
    fast;
    cin >> N;
    for (int i = 1; i <= N; ++i) cin >> A[i].fi >> A[i].si;
    sort(A + 1, A + 1 + N);
    for (int i = 1; i <= N; ++i) sum[i] = sum[i - 1] + A[i].si;
    for (int i = 1; i <= N; ++i) {
        if (i == 1) {
            ans = A[i].si;
            mn = -A[i].fi;
        } else {
            mn = min(mn, sum[i - 1] - A[i].fi);
            ans = max(ans, sum[i] - A[i].fi - mn);
        }
    }    
    cout << ans;
    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...