Submission #1156832

#TimeUsernameProblemLanguageResultExecution timeMemory
1156832gulmixArt Exhibition (JOI18_art)C++20
100 / 100
110 ms12304 KiB
#include<bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
using namespace std;
using ll = long long;
#define all(x) x.begin(), x.end()
#define oset tree<ll, null_type, less<ll>, rb_tree_tag, tree_order_statistics_node_update> 

int main(){
    ios::sync_with_stdio(false);
    cin.tie(0); 
    //ifstream cin("inputf.txt");
    //ofstream cout("outputfv.txt");
    ll n; cin >> n;
    vector<pair<ll, ll>> a(n);
    vector<ll> pref(n);
    for(int i = 0; i < n; i++){
        cin >> a[i].first >> a[i].second;
    }
    sort(all(a));
    for(int i = 0; i < n; i++){
        pref[i] = (i > 0 ? pref[i-1] : 0) + a[i].second;
    }
    ll ans = 0;
    ll mn = -a[0].first;
    for(int i = 0; i < n; i++){
        ans = max(ans, pref[i] - a[i].first - mn);
        mn = min(mn, pref[i] - a[i+1].first);
    }
    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...