Submission #1164201
Source Code Expand
#include <iostream> #include <vector> using namespace std; typedef long long lli; lli n; vector<lli> a; lli dp[100005][2][2]; int main(int argc, char const *argv[]) { cin >> n; lli x; char c; cin >> x; a.push_back(x); for(lli i = 1;i < n;i++){ cin >> c >> x; if(c == '-') a.push_back(x*-1); if(c == '+'){ if(a.back() > 0) a.back() += x; else a.push_back(x); } } for(lli i = 0;i < a.size();i++){ dp[i][0][0] = dp[i][1][0] = dp[i][1][1] = -1000000000000000000; } dp[2][0][0] = dp[2][1][1] = a[0]+a[1]; for(lli i = 2;i < a.size();i++){ if(a[i] < 0){ dp[i+1][0][0] = dp[i][0][0]+a[i]; dp[i+1][1][0] = max(dp[i][1][0]+a[i],dp[i][1][1]-a[i]); dp[i+1][1][1] = max(dp[i][1][0]+a[i],max(dp[i][1][1]-a[i],dp[i][0][0]+a[i])); }else{ dp[i+1][0][0] = dp[i][0][0]+a[i]; dp[i+1][1][0] = max(dp[i][1][0]+a[i],dp[i][1][1]-a[i]); dp[i+1][1][1] = max(dp[i][1][0]+a[i],dp[i][1][1]-a[i]); } } cout << max(max(dp[a.size()][0][0],dp[a.size()][1][0]),dp[a.size()][1][1]) << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | E - Addition and Subtraction Hard |
User | deoxy |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1223 Byte |
Status | WA |
Exec Time | 57 ms |
Memory | 4340 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 | 1 ms | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
sample_03.txt | AC | 1 ms | 256 KB |
subtask_1_alladd_01.txt | WA | 48 ms | 256 KB |
subtask_1_alladd_02.txt | WA | 48 ms | 256 KB |
subtask_1_alladd_03.txt | WA | 48 ms | 256 KB |
subtask_1_alladd_04.txt | WA | 48 ms | 256 KB |
subtask_1_allsub_01.txt | AC | 51 ms | 4340 KB |
subtask_1_allsub_02.txt | AC | 51 ms | 4340 KB |
subtask_1_allsub_03.txt | AC | 51 ms | 4340 KB |
subtask_1_allsub_04.txt | AC | 51 ms | 4340 KB |
subtask_1_cont_01.txt | AC | 27 ms | 1276 KB |
subtask_1_cont_02.txt | AC | 21 ms | 1148 KB |
subtask_1_cont_03.txt | AC | 18 ms | 1020 KB |
subtask_1_cont_04.txt | AC | 5 ms | 384 KB |
subtask_1_killer_01.txt | AC | 45 ms | 256 KB |
subtask_1_killer_02.txt | AC | 32 ms | 256 KB |
subtask_1_killer_03.txt | AC | 46 ms | 256 KB |
subtask_1_killer_04.txt | AC | 32 ms | 256 KB |
subtask_1_max_01.txt | AC | 51 ms | 3316 KB |
subtask_1_max_02.txt | AC | 57 ms | 3316 KB |
subtask_1_max_03.txt | AC | 51 ms | 3316 KB |
subtask_1_max_04.txt | AC | 52 ms | 3316 KB |
subtask_1_min_01.txt | WA | 1 ms | 256 KB |
subtask_1_min_02.txt | WA | 1 ms | 256 KB |
subtask_1_rand_01.txt | AC | 32 ms | 2168 KB |
subtask_1_rand_02.txt | AC | 37 ms | 2424 KB |
subtask_1_rand_03.txt | AC | 6 ms | 512 KB |
subtask_1_rand_04.txt | AC | 16 ms | 1276 KB |