| Task: | Odd sequence |
| Sender: | Olli Järviniemi |
| Submission time: | 2017-09-12 17:46:30 +0300 |
| Language: | C++ |
| Status: | READY |
| Result: | WRONG ANSWER |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.59 s | details |
| #2 | WRONG ANSWER | 0.31 s | details |
| #3 | WRONG ANSWER | 0.23 s | details |
| #4 | ACCEPTED | 0.53 s | details |
| #5 | WRONG ANSWER | 0.03 s | details |
| #6 | WRONG ANSWER | 0.05 s | details |
| #7 | ACCEPTED | 0.03 s | details |
| #8 | ACCEPTED | 0.04 s | details |
| #9 | ACCEPTED | 0.04 s | details |
| #10 | ACCEPTED | 0.05 s | details |
| #11 | WRONG ANSWER | 0.04 s | details |
| #12 | WRONG ANSWER | 0.05 s | details |
| #13 | ACCEPTED | 0.05 s | details |
| #14 | WRONG ANSWER | 0.03 s | details |
| #15 | ACCEPTED | 0.03 s | details |
| #16 | ACCEPTED | 0.04 s | details |
| #17 | ACCEPTED | 0.05 s | details |
| #18 | WRONG ANSWER | 0.05 s | details |
| #19 | WRONG ANSWER | 0.04 s | details |
| #20 | WRONG ANSWER | 0.06 s | details |
| #21 | WRONG ANSWER | 0.07 s | details |
| #22 | ACCEPTED | 0.04 s | details |
| #23 | ACCEPTED | 0.04 s | details |
| #24 | ACCEPTED | 0.03 s | details |
| #25 | ACCEPTED | 0.03 s | details |
| #26 | ACCEPTED | 0.05 s | details |
| #27 | ACCEPTED | 0.05 s | details |
| #28 | WRONG ANSWER | 0.05 s | details |
| #29 | WRONG ANSWER | 0.04 s | details |
| #30 | ACCEPTED | 0.05 s | details |
| #31 | ACCEPTED | 0.04 s | details |
| #32 | ACCEPTED | 0.03 s | details |
| #33 | ACCEPTED | 0.04 s | details |
| #34 | WRONG ANSWER | 0.04 s | details |
| #35 | ACCEPTED | 0.04 s | details |
| #36 | WRONG ANSWER | 0.05 s | details |
| #37 | WRONG ANSWER | 0.04 s | details |
| #38 | ACCEPTED | 0.04 s | details |
| #39 | ACCEPTED | 0.05 s | details |
| #40 | ACCEPTED | 0.04 s | details |
| #41 | ACCEPTED | 0.04 s | details |
| #42 | WRONG ANSWER | 0.04 s | details |
| #43 | WRONG ANSWER | 0.03 s | details |
| #44 | WRONG ANSWER | 0.04 s | details |
| #45 | ACCEPTED | 0.06 s | details |
| #46 | ACCEPTED | 0.05 s | details |
| #47 | ACCEPTED | 0.05 s | details |
| #48 | ACCEPTED | 0.05 s | details |
| #49 | ACCEPTED | 0.05 s | details |
| #50 | WRONG ANSWER | 0.04 s | details |
| #51 | WRONG ANSWER | 0.04 s | details |
Code
#include <iostream>
using namespace std;
const int N = (1e6) + 6;
typedef long long ll;
long long sums[N];
long long maxEven[N];
long long minEven[N];
long long maxOdd[N];
long long minOdd[N];
int main() {
int n;
cin >> n;
for(int i = 1; i <= n; i++) {
long long a;
cin >> a;
sums[i] = sums[i-1] + a;
}
maxEven[0] = sums[0];
maxOdd[1] = sums[1];
minEven[0] = sums[0];
minOdd[1] = sums[1];
long long best = sums[1];
for(int i = 0; i <= n - 3; i+=2) {
maxEven[i+2] = max(maxEven[i], sums[i+2]);
minEven[i+2] = min(minEven[i], sums[i+2]);
maxOdd[i+3] = max(maxOdd[i+1], sums[i + 3]);
minOdd[i+3] = min(minOdd[i+1], sums[i + 3]);
best = max(best, maxEven[i+2] - minOdd[i+3]);
best = max(best, maxOdd[i+3] - minEven[i+2]);
}
if(n%2 == 0) {
int i = n - 2;
maxEven[i+2] = max(maxEven[i], sums[i+2]);
minEven[i+2] = min(minEven[i], sums[i+2]);
best = max(best, maxEven[i+2] - minOdd[i+1]);
}
cout << best << "\n";
}
Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 1000000 0 99833416 198669330 295520206... |
| correct output |
|---|
| 20008336040 |
| user output |
|---|
| 20008336040 |
Test 2
Verdict: WRONG ANSWER
| input |
|---|
| 1000000 -84 -60 -41 -100 8 -8 -52 -62 ... |
| correct output |
|---|
| 48760 |
| user output |
|---|
| 58745 |
Test 3
Verdict: WRONG ANSWER
| input |
|---|
| 1000000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ... |
| correct output |
|---|
| 5300 |
| user output |
|---|
| 14982 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 1000000 13915014 -15160138 25244495 40... |
| correct output |
|---|
| 105192740048 |
| user output |
|---|
| 105192740048 |
Test 5
Verdict: WRONG ANSWER
| input |
|---|
| 10 1 1 -1 -1 -1 1 0 -1 1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 3 |
Test 6
Verdict: WRONG ANSWER
| input |
|---|
| 10 0 -1 1 -1 -1 -1 1 1 -1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 3 |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 10 1 0 1 -1 0 1 1 1 -1 0 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 10 1 0 1 -1 0 1 -1 -1 0 1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 10 0 0 0 0 0 -1 1 -1 1 1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 10
Verdict: ACCEPTED
| input |
|---|
| 10 1 -1 -1 1 1 0 1 0 1 0 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 11
Verdict: WRONG ANSWER
| input |
|---|
| 10 0 1 -1 -1 -1 1 1 0 0 0 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 3 |
Test 12
Verdict: WRONG ANSWER
| input |
|---|
| 10 1 -1 -1 -1 -1 1 -1 1 0 1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 3 |
Test 13
Verdict: ACCEPTED
| input |
|---|
| 10 -1 0 1 0 -1 1 -1 0 1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 14
Verdict: WRONG ANSWER
| input |
|---|
| 10 1 -1 0 1 0 0 -1 0 -1 1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 2 |
Test 15
Verdict: ACCEPTED
| input |
|---|
| 10 1 1 1 0 -1 1 0 1 -1 1 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 16
Verdict: ACCEPTED
| input |
|---|
| 10 -1 1 1 0 -1 -1 0 1 0 1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 17
Verdict: ACCEPTED
| input |
|---|
| 10 -1 -1 1 0 1 -1 1 1 1 -1 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 18
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 -1 -1 0 1 1 0 -1 1 -1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 3 |
Test 19
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 -1 0 -1 -1 -1 -1 0 1 1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 6 |
Test 20
Verdict: WRONG ANSWER
| input |
|---|
| 10 0 0 -1 -1 1 -1 0 0 1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 2 |
Test 21
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 -1 -1 0 0 1 -1 1 0 0 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 3 |
Test 22
Verdict: ACCEPTED
| input |
|---|
| 10 0 0 -1 1 0 -1 0 0 1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 23
Verdict: ACCEPTED
| input |
|---|
| 10 -1 0 0 1 0 0 0 0 1 0 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 24
Verdict: ACCEPTED
| input |
|---|
| 10 0 0 1 1 1 0 1 -1 1 0 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 25
Verdict: ACCEPTED
| input |
|---|
| 10 -1 0 1 0 -1 0 1 0 1 0 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 26
Verdict: ACCEPTED
| input |
|---|
| 10 1 -1 -1 1 1 -1 1 1 -1 0 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 27
Verdict: ACCEPTED
| input |
|---|
| 10 -1 1 -1 1 1 -1 -1 1 1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 28
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 0 -1 -1 -1 -1 -1 -1 -1 1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 8 |
Test 29
Verdict: WRONG ANSWER
| input |
|---|
| 10 1 0 -1 0 0 -1 0 1 -1 0 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 2 |
Test 30
Verdict: ACCEPTED
| input |
|---|
| 10 -1 1 0 0 -1 1 1 1 0 1 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 31
Verdict: ACCEPTED
| input |
|---|
| 10 1 1 -1 -1 0 0 1 0 1 -1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 32
Verdict: ACCEPTED
| input |
|---|
| 10 1 1 0 1 0 1 0 1 1 0 |
| correct output |
|---|
| 6 |
| user output |
|---|
| 6 |
Test 33
Verdict: ACCEPTED
| input |
|---|
| 10 -1 0 -1 1 1 1 1 -1 1 -1 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 34
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 0 1 1 -1 -1 1 -1 -1 0 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 3 |
Test 35
Verdict: ACCEPTED
| input |
|---|
| 10 -1 -1 -1 1 0 1 -1 0 1 1 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 36
Verdict: WRONG ANSWER
| input |
|---|
| 10 0 1 1 -1 -1 -1 1 0 0 0 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 3 |
Test 37
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 1 -1 -1 0 0 -1 0 -1 1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 4 |
Test 38
Verdict: ACCEPTED
| input |
|---|
| 10 -1 1 0 0 0 0 1 -1 -1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 39
Verdict: ACCEPTED
| input |
|---|
| 10 -1 -1 -1 1 -1 1 1 1 -1 1 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 40
Verdict: ACCEPTED
| input |
|---|
| 10 0 -1 -1 -1 1 1 1 1 0 1 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 41
Verdict: ACCEPTED
| input |
|---|
| 10 1 -1 0 1 0 0 0 -1 1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 42
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 0 -1 1 0 -1 0 0 0 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 2 |
Test 43
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 -1 1 0 1 -1 -1 -1 1 -1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 3 |
Test 44
Verdict: WRONG ANSWER
| input |
|---|
| 10 1 0 0 -1 1 -1 -1 1 0 0 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 2 |
Test 45
Verdict: ACCEPTED
| input |
|---|
| 10 1 1 0 -1 1 1 1 -1 0 0 |
| correct output |
|---|
| 4 |
| user output |
|---|
| 4 |
Test 46
Verdict: ACCEPTED
| input |
|---|
| 10 1 0 -1 1 -1 0 0 1 -1 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 47
Verdict: ACCEPTED
| input |
|---|
| 10 0 1 -1 0 1 1 1 0 -1 -1 |
| correct output |
|---|
| 3 |
| user output |
|---|
| 3 |
Test 48
Verdict: ACCEPTED
| input |
|---|
| 10 0 0 1 -1 0 1 -1 0 0 -1 |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 49
Verdict: ACCEPTED
| input |
|---|
| 10 -1 0 1 1 0 -1 1 0 -1 1 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 2 |
Test 50
Verdict: WRONG ANSWER
| input |
|---|
| 10 -1 1 0 1 -1 -1 -1 -1 1 0 |
| correct output |
|---|
| 2 |
| user output |
|---|
| 3 |
Test 51
Verdict: WRONG ANSWER
| input |
|---|
| 3 -10 -5 -2 |
| correct output |
|---|
| -2 |
| user output |
|---|
| 17 |
