Submission #4020469
Source Code Expand
#include <bits/stdc++.h> #define MAX_N 100000 using namespace std; typedef long long lnt; template <class T> inline void read(T &x) { x = 0; int c = getchar(), f = 1; for (; !isdigit(c); c = getchar()) if (c == 45) f = -1; for (; isdigit(c); c = getchar()) (x *= 10) += f*(c-48); } int n; lnt l, c[MAX_N+5]; lnt a[MAX_N+5], b[MAX_N+5]; lnt sl[MAX_N+5], sr[MAX_N+5]; lnt f[2][MAX_N+5], g[2][MAX_N+5]; int main() { read(n), read(l); for (int i = 1; i <= n; i++) read(a[i]), b[i] = l-a[i], read(c[i]); for (int i = 1; i <= n; i++) sl[i] = sl[i-1]+c[i]; for (int i = n; i >= 1; i--) sr[i] = sr[i+1]+c[i]; for (int i = 1; i <= n; i++) f[0][i] = max(f[0][i-1], sl[i]-a[i]), f[1][i] = max(f[1][i-1], sl[i]-2*a[i]); f[0][n+1] = f[0][1], f[1][n+1] = f[1][1]; for (int i = n; i >= 1; i--) g[0][i] = max(g[0][i+1], sr[i]-b[i]), g[1][i] = max(g[1][i+1], sr[i]-2*b[i]); g[0][0] = g[0][1], g[1][0] = g[1][1]; lnt mx = 0; for (int p = 0, q = 1; p <= n; p++, q++) mx = max(mx, f[0][p]+g[1][q]), mx = max(mx, f[1][p]+g[0][q]); return printf("%lld\n", mx), 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Static Sushi |
User | Azrael_Death |
Language | C++14 (GCC 5.4.1) |
Score | 500 |
Code Size | 1108 Byte |
Status | AC |
Exec Time | 25 ms |
Memory | 7296 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 | 4352 KB |
a02 | AC | 2 ms | 4352 KB |
a03 | AC | 2 ms | 4352 KB |
a04 | AC | 2 ms | 4352 KB |
b05 | AC | 2 ms | 4352 KB |
b06 | AC | 2 ms | 4352 KB |
b07 | AC | 2 ms | 4352 KB |
b08 | AC | 2 ms | 4352 KB |
b09 | AC | 2 ms | 4352 KB |
b10 | AC | 2 ms | 4352 KB |
b11 | AC | 2 ms | 4352 KB |
b12 | AC | 2 ms | 4352 KB |
b13 | AC | 2 ms | 4352 KB |
b14 | AC | 2 ms | 4352 KB |
b15 | AC | 2 ms | 4352 KB |
b16 | AC | 2 ms | 4352 KB |
b17 | AC | 2 ms | 4352 KB |
b18 | AC | 2 ms | 4352 KB |
b19 | AC | 2 ms | 4352 KB |
b20 | AC | 2 ms | 4352 KB |
b21 | AC | 2 ms | 4352 KB |
b22 | AC | 2 ms | 4352 KB |
b23 | AC | 2 ms | 4352 KB |
b24 | AC | 2 ms | 4352 KB |
b25 | AC | 2 ms | 4352 KB |
b26 | AC | 2 ms | 4352 KB |
b27 | AC | 2 ms | 4352 KB |
b28 | AC | 2 ms | 4352 KB |
b29 | AC | 2 ms | 4352 KB |
c30 | AC | 11 ms | 7296 KB |
c31 | AC | 18 ms | 7296 KB |
c32 | AC | 25 ms | 7296 KB |
c33 | AC | 25 ms | 7296 KB |
c34 | AC | 24 ms | 7296 KB |
c35 | AC | 11 ms | 7296 KB |
c36 | AC | 24 ms | 7296 KB |
c37 | AC | 23 ms | 7296 KB |
c38 | AC | 23 ms | 7296 KB |
c39 | AC | 23 ms | 7296 KB |
c40 | AC | 23 ms | 7296 KB |
c41 | AC | 22 ms | 7296 KB |
c42 | AC | 23 ms | 7296 KB |
c43 | AC | 4 ms | 4608 KB |
c44 | AC | 22 ms | 7296 KB |
c45 | AC | 2 ms | 4352 KB |
c46 | AC | 22 ms | 7296 KB |
c47 | AC | 2 ms | 4352 KB |
c48 | AC | 23 ms | 7296 KB |
c49 | AC | 22 ms | 7296 KB |
c50 | AC | 23 ms | 7296 KB |