# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
330734 | TLP39 | Art Exhibition (JOI18_art) | C++14 | 270 ms | 26880 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>
using namespace std;
int main()
{
int n;
scanf("%d",&n);
long long int a,b;
pair<long long int,long long int> ab[n+1];
for(int i=1;i<=n;i++)
{
scanf("%lld %lld",&a,&b);
ab[i]={a,b};
}
sort(ab+1,ab+n+1);
long long int pre[n+1]={};
pre[1]=ab[1].second;
for(int i=2;i<=n;i++)
{
pre[i]=pre[i-1]-(ab[i].first-ab[i-1].first)+ab[i].second;
}
int best_end[n+1]={};
best_end[n]=n;
for(int i=n-1;i>0;i--)
{
best_end[i]=best_end[i+1];
if(pre[i]>pre[best_end[i]])
{
best_end[i]=i;
}
}
long long int maxx=0;
for(int i=1;i<=n;i++)
{
maxx=max(pre[best_end[i]]-pre[i]+ab[i].second,maxx);
}
printf("%lld",maxx);
}
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... |