Submission #1217277


Source Code Expand

#include<cstdio>
#include<cstring>
#include<vector>
#include<queue>
#include<algorithm>
#include<cmath>
#include<climits>
#include<string>
#include<set>
#include<numeric>
#include<map>
#include<iostream>
using namespace std;
#define rep(i,n) for(int i = 0;i<((int)(n));i++)
#define reg(i,a,b) for(int i = ((int)(a));i<=((int)(b));i++)
#define irep(i,n) for(int i = ((int)(n)-1);i>=0;i--)
#define ireg(i,a,b) for(int i = ((int)(b));i>=((int)(a));i--)
typedef long long int lli;
typedef pair<int, int> mp;
#define fir first
#define sec second
#define IINF INT_MAX
#define LINF LLONG_MAX
#define eprintf(...) fprintf(stderr,__VA_ARGS__)
#define pque(type) priority_queue<type,vector<type>,greater<type> >
#define memst(a,b) memset(a,b,sizeof(a))

int main(void){
	int n, m = 1; cin >> n;
	vector<vector<lli>> v(1, vector<lli>(1, 0));
	cin >> v[0][0];
	rep(i, n-1){
		char op; lli t; cin >> op >> t;
		if(v.size() < m) v.push_back(vector<lli>(0));
		if(op == '-'){
			v.back().push_back(-t);
			m++;
		}else{
			v.back().push_back(t);
		}
	}
	
	lli ans = accumulate(v[0].begin(), v[0].end(), 0);
	
	lli s1min = 0, s1s = 0;
	rep(j, v[1].size()){
		s1s += v[1][j];
		s1min = min(s1min, s1s);
	}
	ans += s1s - s1min*2;
	
	for(int i = 2; i < v.size(); i++){
		lli smax = 0, smin = 0, ss = 0;
		rep(j, v[i].size()){
			ss += v[i][j];
			smin = min(smin, ss);
			smax = max(smax, ss);
		}
		ans += max(ss - smin*2, 2*smax - ss);
	}
	
	cout << ans << endl;
	
	return 0;
}

Submission Info

Submission Time
Task E - Addition and Subtraction Hard
User ktyshmt
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1524 Byte
Status RE
Exec Time 142 ms
Memory 6580 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 900
Status
AC × 3
AC × 16
WA × 9
RE × 4
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 1400 KB
subtask_1_alladd_02.txt RE 142 ms 1400 KB
subtask_1_alladd_03.txt RE 142 ms 1400 KB
subtask_1_alladd_04.txt WA 49 ms 1400 KB
subtask_1_allsub_01.txt AC 56 ms 5680 KB
subtask_1_allsub_02.txt AC 56 ms 6452 KB
subtask_1_allsub_03.txt AC 56 ms 6580 KB
subtask_1_allsub_04.txt AC 57 ms 5680 KB
subtask_1_cont_01.txt WA 29 ms 1848 KB
subtask_1_cont_02.txt WA 22 ms 1724 KB
subtask_1_cont_03.txt WA 19 ms 1724 KB
subtask_1_cont_04.txt AC 5 ms 512 KB
subtask_1_killer_01.txt WA 46 ms 1280 KB
subtask_1_killer_02.txt WA 32 ms 1024 KB
subtask_1_killer_03.txt WA 47 ms 1408 KB
subtask_1_killer_04.txt WA 32 ms 1024 KB
subtask_1_max_01.txt AC 56 ms 3252 KB
subtask_1_max_02.txt AC 56 ms 3252 KB
subtask_1_max_03.txt AC 56 ms 3252 KB
subtask_1_max_04.txt AC 56 ms 3252 KB
subtask_1_min_01.txt RE 96 ms 256 KB
subtask_1_min_02.txt RE 95 ms 256 KB
subtask_1_rand_01.txt AC 35 ms 2104 KB
subtask_1_rand_02.txt AC 41 ms 3000 KB
subtask_1_rand_03.txt AC 6 ms 640 KB
subtask_1_rand_04.txt AC 17 ms 1084 KB