# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
238705 | dCoding | Art Exhibition (JOI18_art) | C++14 | 5 ms | 256 KiB |
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 ll long long int
#define ld long double
#define pb push_back
#define mp make_pair
#define pii pair<int,int>
#define pll pair<ll,ll>
#define F first
#define S second
#define all(x) (x).begin(),(x).end()
#define SZ(x) ((int)(x).size())
#define MS(x,a) memset((x),(a),sizeof(x))
#define F0R(i,n) for(auto (i) = 0; (i) < (n); (i)++)
#define FOR(i,a,b) for(auto (i) = (a); (i) <= (b); (i)++)
#define ROF(i,a,b) for(auto (i) = (a); (i) >= (b); (i)--)
using namespace std;
const int MAXN = 5e5+5;
pll a[MAXN];
ll pre[MAXN];
int main() {
int n; scanf("%d",&n);
FOR(i,1,n) scanf("%lld%lld",&a[i].F,&a[i].S);
sort(a+1,a+1+n);
FOR(i,1,n) pre[i] = pre[i-1]+a[i].S;
ll l = -1e9,sl = -1e9,ans = -1e9;
FOR(i,1,n) {
ll v = pre[i]-a[i].F;
ans = max(ans,v+l);
v = a[i].F-pre[i-1];
l = max(l,v);
}
printf("%lld",ans);
}
Compilation message (stderr)
# | 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... |