Submission #938462

#TimeUsernameProblemLanguageResultExecution timeMemory
938462carriewangArt Exhibition (JOI18_art)C++17
100 / 100
133 ms29012 KiB
#include <bits/stdc++.h>
#define ll long long
#define vi vector<int>
#define pii pair<int,int>
#define pll pair<ll,ll>
#define sz(x) x.size()
#define all(x) x.begin(),x.end()
#define F first
#define S second
using namespace std;
const int maxn=500005;
int n;
ll d[maxn],v[maxn],ans;
pll a[maxn];
int main(){
    ios::sync_with_stdio(0),cin.tie(0);
    cin >> n;
    for(int i=1;i<=n;i++) cin >> a[i].F >> a[i].S;
    sort(a+1,a+1+n);
    for(int i=1;i<=n;i++){
        v[i]=a[i].S-a[i].F+a[i-1].F;
    }
    d[n]=v[n];
    for(int i=n-1;i>=1;i--){
        d[i]=max(d[i+1]+v[i],v[i]);
        ans=max(ans,d[i]+a[i].F-a[i-1].F);
    }
    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...