Submission #1371257
Source Code Expand
#include <iostream> #include <vector> int main() { unsigned N; std::cin >> N; std::vector<long long> A(N); std::vector<char> op(N); op[0] = '+'; std::cin >> A[0]; for (unsigned i = 1; i < N; ++i) { std::cin >> op[i] >> A[i]; } std::vector<std::vector<long long>> dp(N, std::vector<long long>(3)); dp[0][0] = A[0]; dp[0][1] = std::numeric_limits<long long>::min() / 2; dp[0][2] = std::numeric_limits<long long>::min() / 2; for (unsigned i = 1; i < N; ++i) { if (op[i] == '+') { dp[i][0] = std::max(dp[i - 1][0] + A[i], dp[i - 1][1] + A[i]); dp[i][1] = std::max(dp[i - 1][1] - A[i], dp[i - 1][2] - A[i]); dp[i][2] = dp[i - 1][2] + A[i]; } else { dp[i][0] = std::max(dp[i - 1][0] - A[i], dp[i - 1][1] - A[i]); dp[i][1] = std::max(std::max(dp[i - 1][0] - A[i], dp[i - 1][2] + A[i]), dp[i - 1][1] + A[i]); dp[i][2] = std::max(dp[i - 1][1] + A[i], dp[i - 1][2] - A[i]); } } std::cout << std::max(std::max(dp.back()[0], dp.back()[1]), dp.back()[2]); return 0; }
Submission Info
Submission Time | |
---|---|
Task | E - Addition and Subtraction Hard |
User | ytsmiling |
Language | C++14 (Clang 3.8.0) |
Score | 0 |
Code Size | 1069 Byte |
Status | WA |
Exec Time | 137 ms |
Memory | 6656 KB |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 900 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_alladd_01.txt, subtask_1_alladd_02.txt, subtask_1_alladd_03.txt, subtask_1_alladd_04.txt, subtask_1_allsub_01.txt, subtask_1_allsub_02.txt, subtask_1_allsub_03.txt, subtask_1_allsub_04.txt, subtask_1_cont_01.txt, subtask_1_cont_02.txt, subtask_1_cont_03.txt, subtask_1_cont_04.txt, subtask_1_killer_01.txt, subtask_1_killer_02.txt, subtask_1_killer_03.txt, subtask_1_killer_04.txt, subtask_1_max_01.txt, subtask_1_max_02.txt, subtask_1_max_03.txt, subtask_1_max_04.txt, subtask_1_min_01.txt, subtask_1_min_02.txt, subtask_1_rand_01.txt, subtask_1_rand_02.txt, subtask_1_rand_03.txt, subtask_1_rand_04.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 7 ms | 888 KB |
sample_02.txt | AC | 1 ms | 256 KB |
sample_03.txt | AC | 1 ms | 256 KB |
subtask_1_alladd_01.txt | AC | 136 ms | 6656 KB |
subtask_1_alladd_02.txt | AC | 135 ms | 6656 KB |
subtask_1_alladd_03.txt | AC | 136 ms | 6656 KB |
subtask_1_alladd_04.txt | AC | 136 ms | 6656 KB |
subtask_1_allsub_01.txt | AC | 136 ms | 6656 KB |
subtask_1_allsub_02.txt | AC | 136 ms | 6656 KB |
subtask_1_allsub_03.txt | AC | 136 ms | 6656 KB |
subtask_1_allsub_04.txt | AC | 137 ms | 6656 KB |
subtask_1_cont_01.txt | AC | 74 ms | 3712 KB |
subtask_1_cont_02.txt | AC | 56 ms | 2816 KB |
subtask_1_cont_03.txt | AC | 47 ms | 2432 KB |
subtask_1_cont_04.txt | AC | 12 ms | 768 KB |
subtask_1_killer_01.txt | WA | 127 ms | 6144 KB |
subtask_1_killer_02.txt | WA | 89 ms | 4352 KB |
subtask_1_killer_03.txt | WA | 131 ms | 6400 KB |
subtask_1_killer_04.txt | WA | 89 ms | 4352 KB |
subtask_1_max_01.txt | WA | 136 ms | 6656 KB |
subtask_1_max_02.txt | WA | 137 ms | 6656 KB |
subtask_1_max_03.txt | WA | 137 ms | 6656 KB |
subtask_1_max_04.txt | WA | 137 ms | 6656 KB |
subtask_1_min_01.txt | AC | 1 ms | 256 KB |
subtask_1_min_02.txt | AC | 1 ms | 256 KB |
subtask_1_rand_01.txt | WA | 83 ms | 4096 KB |
subtask_1_rand_02.txt | WA | 98 ms | 4864 KB |
subtask_1_rand_03.txt | WA | 13 ms | 768 KB |
subtask_1_rand_04.txt | WA | 41 ms | 2176 KB |