Submission #6334192
Source Code Expand
import sys
input = sys.stdin.readline
N = int(input())
terms = [[]] # マイナス区切り
op = '+'
for x in input().rstrip().split():
if x in '+-':
op = x
continue
x = int(x)
if op == '+':
terms[-1].append(x)
else:
terms.append([x])
# 何をマイナスにするか
min_minus = 10 ** 18
first_sum = 0
for t in terms[1:]:
x = first_sum + sum(t)
if x < min_minus:
min_minus = x
first_sum += t[0]
answer = sum(sum(t) for t in terms)
if len(terms) > 1:
answer -= 2 * min_minus
print(answer)
Submission Info
| Submission Time | |
|---|---|
| Task | E - Addition and Subtraction Hard |
| User | maspy |
| Language | Python (3.4.3) |
| Score | 900 |
| Code Size | 595 Byte |
| Status | AC |
| Exec Time | 166 ms |
| Memory | 24864 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 900 / 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 | 17 ms | 3064 KiB |
| sample_02.txt | AC | 17 ms | 3064 KiB |
| sample_03.txt | AC | 17 ms | 3064 KiB |
| subtask_1_alladd_01.txt | AC | 88 ms | 15904 KiB |
| subtask_1_alladd_02.txt | AC | 81 ms | 15904 KiB |
| subtask_1_alladd_03.txt | AC | 77 ms | 14788 KiB |
| subtask_1_alladd_04.txt | AC | 86 ms | 15904 KiB |
| subtask_1_allsub_01.txt | AC | 166 ms | 24772 KiB |
| subtask_1_allsub_02.txt | AC | 165 ms | 24352 KiB |
| subtask_1_allsub_03.txt | AC | 156 ms | 24864 KiB |
| subtask_1_allsub_04.txt | AC | 159 ms | 24864 KiB |
| subtask_1_cont_01.txt | AC | 73 ms | 11792 KiB |
| subtask_1_cont_02.txt | AC | 57 ms | 9624 KiB |
| subtask_1_cont_03.txt | AC | 51 ms | 8644 KiB |
| subtask_1_cont_04.txt | AC | 26 ms | 4320 KiB |
| subtask_1_killer_01.txt | AC | 75 ms | 14136 KiB |
| subtask_1_killer_02.txt | AC | 58 ms | 10884 KiB |
| subtask_1_killer_03.txt | AC | 79 ms | 15544 KiB |
| subtask_1_killer_04.txt | AC | 57 ms | 11016 KiB |
| subtask_1_max_01.txt | AC | 125 ms | 19780 KiB |
| subtask_1_max_02.txt | AC | 132 ms | 19616 KiB |
| subtask_1_max_03.txt | AC | 125 ms | 19600 KiB |
| subtask_1_max_04.txt | AC | 133 ms | 19780 KiB |
| subtask_1_min_01.txt | AC | 17 ms | 3064 KiB |
| subtask_1_min_02.txt | AC | 17 ms | 3064 KiB |
| subtask_1_rand_01.txt | AC | 82 ms | 13072 KiB |
| subtask_1_rand_02.txt | AC | 97 ms | 14868 KiB |
| subtask_1_rand_03.txt | AC | 28 ms | 4508 KiB |
| subtask_1_rand_04.txt | AC | 50 ms | 7900 KiB |