제출 #1033813

#제출 시각아이디문제언어결과실행 시간메모리
1033813vjudge1Art Exhibition (JOI18_art)C++17
100 / 100
143 ms24792 KiB
#include<bits/stdc++.h> #define ll long long #define faster ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); #define sp << " " #define task "tl" using namespace std; pair<ll,ll> a[500005]; ll mcd[500005]; ll n; void sub123(){ sort(a+1,a+n+1); for(ll i = 1; i <= n; i++) mcd[i]=mcd[i-1]+a[i].second; ll ma = -1e18; for(ll i = 1; i <= n; i++){ for(ll j = i; j <= n; j++){ ma = max(ma, (mcd[j]-a[j].first)-(mcd[i-1]-a[i].first)); } } cout << ma; } void sub4(){ sort(a+1,a+n+1); for(ll i = 1; i <= n; i++) mcd[i]=mcd[i-1]+a[i].second; ll ma = -1e18, mi = 1e18; for(ll i = 1; i <= n; i++){ mi = min(mi, mcd[i-1]-a[i].first); ma = max(ma, mcd[i]-a[i].first-mi); } cout << ma; } int main(){ faster; cin >> n; for(ll i = 1; i <= n; i++){ cin >> a[i].first >> a[i].second; } if(n<=5000){ sub123(); } else{ sub4(); } 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...