Submission #2555267
Source Code Expand
#include<bits/stdc++.h> using namespace std; const int Maxn=1e5+5; int n; long long c,x[Maxn],v[Maxn]; int main(){ cin>>n>>c; for(int i=1;i<=n;i++){ cin>>x[i]>>v[i]; } x[n+1]=c; long long ans=0,sum=0; for(int i=1;i<=n;i++){ sum+=v[i]-(x[i]-x[i-1]); ans=max(ans,sum); } sum=0; for(int i=n;i>=1;i--){ sum+=v[i]-(x[i+1]-x[i]); ans=max(ans,sum); } long long l[Maxn]={0},r[Maxn]={0}; sum=0; long long maxv=0; for(int i=1;i<=n;i++){ sum+=v[i]-2*(x[i]-x[i-1]); maxv=max(maxv,sum); l[i]=maxv; } sum=0; maxv=0; for(int i=n;i>=1;i--){ sum+=v[i]-(x[i+1]-x[i]); maxv=max(maxv,sum); r[i]=maxv; } for(int i=2;i<=n;i++){ ans=max(ans,l[i-1]+r[i]); } memset(l,0,sizeof(l)); memset(r,0,sizeof(r)); sum=0; maxv=0; for(int i=1;i<=n;i++){ sum+=v[i]-(x[i]-x[i-1]); maxv=max(maxv,sum); l[i]=maxv; } sum=0; maxv=0; for(int i=n;i>=1;i--){ sum+=v[i]-2*(x[i+1]-x[i]); maxv=max(maxv,sum); r[i]=maxv; } for(int i=2;i<=n;i++){ ans=max(ans,l[i-1]+r[i]); } cout<<ans; }
Submission Info
Submission Time | |
---|---|
Task | D - Static Sushi |
User | chen_songyong |
Language | C++14 (GCC 5.4.1) |
Score | 500 |
Code Size | 1073 Byte |
Status | AC |
Exec Time | 98 ms |
Memory | 3328 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | 200 / 200 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | a01, a02, a03, a04 |
Subtask1 | a01, a02, a03, a04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29 |
Subtask2 | a01, a02, a03, a04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41, c42, c43, c44, c45, c46, c47, c48, c49, c50 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
a01 | AC | 2 ms | 1792 KB |
a02 | AC | 2 ms | 1792 KB |
a03 | AC | 2 ms | 1792 KB |
a04 | AC | 2 ms | 1792 KB |
b05 | AC | 2 ms | 1792 KB |
b06 | AC | 2 ms | 1792 KB |
b07 | AC | 2 ms | 1792 KB |
b08 | AC | 2 ms | 1792 KB |
b09 | AC | 2 ms | 1792 KB |
b10 | AC | 2 ms | 1792 KB |
b11 | AC | 2 ms | 1792 KB |
b12 | AC | 2 ms | 1792 KB |
b13 | AC | 2 ms | 1792 KB |
b14 | AC | 2 ms | 1792 KB |
b15 | AC | 2 ms | 1792 KB |
b16 | AC | 2 ms | 1792 KB |
b17 | AC | 2 ms | 1792 KB |
b18 | AC | 2 ms | 1792 KB |
b19 | AC | 2 ms | 1792 KB |
b20 | AC | 2 ms | 1792 KB |
b21 | AC | 2 ms | 1792 KB |
b22 | AC | 2 ms | 1792 KB |
b23 | AC | 2 ms | 1792 KB |
b24 | AC | 2 ms | 1792 KB |
b25 | AC | 2 ms | 1792 KB |
b26 | AC | 2 ms | 1792 KB |
b27 | AC | 2 ms | 1792 KB |
b28 | AC | 2 ms | 1792 KB |
b29 | AC | 2 ms | 1792 KB |
c30 | AC | 46 ms | 3328 KB |
c31 | AC | 73 ms | 3328 KB |
c32 | AC | 98 ms | 3328 KB |
c33 | AC | 98 ms | 3328 KB |
c34 | AC | 98 ms | 3328 KB |
c35 | AC | 46 ms | 3328 KB |
c36 | AC | 95 ms | 3328 KB |
c37 | AC | 91 ms | 3328 KB |
c38 | AC | 90 ms | 3328 KB |
c39 | AC | 92 ms | 3328 KB |
c40 | AC | 92 ms | 3328 KB |
c41 | AC | 91 ms | 3328 KB |
c42 | AC | 91 ms | 3328 KB |
c43 | AC | 11 ms | 1920 KB |
c44 | AC | 90 ms | 3328 KB |
c45 | AC | 3 ms | 1792 KB |
c46 | AC | 89 ms | 3328 KB |
c47 | AC | 2 ms | 1792 KB |
c48 | AC | 92 ms | 3328 KB |
c49 | AC | 90 ms | 3328 KB |
c50 | AC | 92 ms | 3328 KB |