Submission #723950

#TimeUsernameProblemLanguageResultExecution timeMemory
723950sandry24Art Exhibition (JOI18_art)C++17
100 / 100
217 ms24720 KiB
#include <bits/stdc++.h>
using namespace std;

#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
typedef long long ll;
typedef vector<int> vi;
typedef pair<int, int> pi;
#define pb push_back
#define mp make_pair
#define f first
#define s second

void solve(){
    int n;
    cin >> n;
    vector<pair<ll, ll>> a(n);
    for(int i = 0; i < n; i++)
        cin >> a[i].f >> a[i].s;
    sort(a.begin(), a.end());
    vector<ll> dp(n);
    dp[n-1] = a[n-1].s;
    for(int i = n-2; i >= 0; i--)
        dp[i] = max(a[i].s, a[i].s + dp[i+1] - (a[i+1].f - a[i].f));
    cout << *max_element(dp.begin(), dp.end()) << '\n';
}

int main(){
    //freopen("input.txt", "r", stdin);
    //freopen("test.out", "w", stdout);
    ios::sync_with_stdio(0); cin.tie(0);
    int t = 1;
    //cin >> t;
    while(t--){
        solve();
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...