This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
#define int long long
using namespace std;
pair<int, int> arr[500005];
int n, mn, mx, sum, c_mn = 1e18, c_mx = -1e18, ans = -1e18;
signed main(){
cin.tie(nullptr)->sync_with_stdio(false);
cin >> n;
for(int i = 1; i<=n; ++i) cin >> arr[i].first >> arr[i].second;
sort(arr+1, arr+1+n);
for(int i = 1; i<=n; ++i){
mn = min(c_mn, arr[i].first);
mx = max(c_mx, arr[i].first);
if(sum + arr[i].second - (mx - mn) < arr[i].second){
sum = arr[i].second;
c_mn = arr[i].first;
c_mx = arr[i].first;
}
else{
c_mn = mn;
c_mx = mx;
sum+=arr[i].second;
}
ans = max(ans, sum - (c_mx - c_mn));
}
cout << ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |