제출 #968284

#제출 시각아이디문제언어결과실행 시간메모리
968284vjudge1Art Exhibition (JOI18_art)C++17
100 / 100
147 ms22848 KiB
#include <bits/stdc++.h>
 
using namespace std;
using ll = long long;
using pii = pair<ll, ll>;
#define fr first
#define se second
const int N = 5e5+2;
 
pii a[N];
ll qs[N], curr = 0, ans = 0, currmn = 1e15, currmx = -1e15, mn, mx;
 
int main()
{
    cin.tie(0)->sync_with_stdio(false);
    cout.tie(0);
    int n;
    cin >> n;
    for (int i = 1;i <= n;i++) {
        cin >> a[i].fr >> a[i].se;
    }
    sort(a+1, a+n+1);
    for (int i = 1; i <= n; ++i){
        mn = min(currmn, a[i].fr);
        mx = max(currmx, a[i].fr);
        if (curr + a[i].se - (mx - mn) < a[i].se){
            curr = a[i].se;
            currmn = a[i].fr;
            currmx = a[i].fr;
        }
        else{
            currmn = mn;
            currmx = mx;
            curr += a[i].se;
        }
        ans = max(ans, curr - (currmx - currmn));
    }
    cout << ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...