제출 #1169187

#제출 시각아이디문제언어결과실행 시간메모리
1169187vyaductArt Exhibition (JOI18_art)C++20
0 / 100
0 ms320 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define F first #define S second #define all(c) (c).begin(), (c).end() void solve(){ int n; cin>>n; vector<pair<ll, ll>> A(n); vector<ll> pref(n+1); for (int i=0;i<n;i++){ cin>>A[i].F>>A[i].S; } sort(all(A)); for (int i=0;i<n;i++) pref[i+1] = pref[i] + A[i].S; int l=0, r=n-1; ll best=0; while(l<r){ ll v = pref[r+1] - pref[l] - (A[r].F - A[l].F); best = max(best, v); ll left = pref[r] - pref[l+1] - (A[r].F - A[l+1].F); ll right = pref[r] - pref[l] - (A[r-1].F - A[l].F); if (left < best && right < best) break; if (left > right || right < best){ l++; } else { r--; } } cout << best << endl; } int main(){ solve(); 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...