Submission #1049970

#TimeUsernameProblemLanguageResultExecution timeMemory
1049970vjudge1Art Exhibition (JOI18_art)C++17
100 / 100
293 ms12184 KiB
#include <bits/stdc++.h>

using namespace std;

int main() {
    int n;
    cin >> n;
    
    vector<pair<long long, long long>> art(n);
    vector<long long> a(n);
    long long ans = 0;
    
    for(int i = 0; i < n; i++){
        cin >> art[i].first >> art[i].second;
    }
    
    sort(art.begin(), art.end());
    
    a[n - 1] = art[n - 1].second;
    ans = a[n - 1];
    
    for (int i = n - 2; i >= 0; i--) {
        a[i] = max(art[i].second + (a[i+1] - art[i+1].first + art[i].first), art[i].second);
        ans = max(ans, a[i]);
    }
    cout << ans << endl;
    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...