Submission #1873185


Source Code Expand

#include <cstdio>
#include <cstring>
#include <algorithm>
#define MAXN 100010
#define LL long long
using namespace std;

int n;
LL a[MAXN];
int b[MAXN];
LL f[MAXN][3];

inline void update(LL &x,LL y){ if(y>x) x=y; }

int main(){
	scanf("%d",&n);
	b[1]=1;
	scanf("%lld",a+1);
	for(int i=2;i<=n;i++){
		char c;
		while((c=getchar())==' ');
		b[i]=(c=='+'?1:-1);
		scanf("%lld",a+i);
	}
	memset(f,0x88,sizeof f);
	f[1][0]=a[1];
	for(int i=2;i<=n;i++)
		if(b[i]==1){
			update(f[i][0],f[i-1][0]+a[i]);
			update(f[i][0],f[i-1][1]+a[i]);
			update(f[i][0],f[i-1][2]+a[i]);
			update(f[i][1],f[i-1][1]-a[i]);
			update(f[i][1],f[i-1][2]-a[i]);
			update(f[i][2],f[i-1][2]+a[i]);
		}else{
			update(f[i][0],f[i-1][0]-a[i]);
			update(f[i][1],f[i-1][0]-a[i]);
			update(f[i][0],f[i-1][1]-a[i]);
			update(f[i][1],f[i-1][1]+a[i]);
			update(f[i][2],f[i-1][1]+a[i]);
			update(f[i][0],f[i-1][2]-a[i]);
			update(f[i][1],f[i-1][2]+a[i]);
			update(f[i][2],f[i-1][2]+a[i]);
		}
	printf("%lld\n",max(max(f[n][0],f[n][1]),f[n][2]));
	return 0;
}

Submission Info

Submission Time
Task E - Addition and Subtraction Hard
User ez_zjt
Language C++14 (GCC 5.4.1)
Score 900
Code Size 1079 Byte
Status AC
Exec Time 17 ms
Memory 3712 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:16:16: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&n);
                ^
./Main.cpp:18:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%lld",a+1);
                   ^
./Main.cpp:23:20: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%lld",a+i);
                    ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 900 / 900
Status
AC × 3
AC × 29
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 2 ms 2560 KB
sample_02.txt AC 2 ms 2560 KB
sample_03.txt AC 2 ms 2560 KB
subtask_1_alladd_01.txt AC 17 ms 3712 KB
subtask_1_alladd_02.txt AC 16 ms 3712 KB
subtask_1_alladd_03.txt AC 16 ms 3712 KB
subtask_1_alladd_04.txt AC 17 ms 3712 KB
subtask_1_allsub_01.txt AC 16 ms 3712 KB
subtask_1_allsub_02.txt AC 16 ms 3712 KB
subtask_1_allsub_03.txt AC 17 ms 3712 KB
subtask_1_allsub_04.txt AC 16 ms 3712 KB
subtask_1_cont_01.txt AC 9 ms 3200 KB
subtask_1_cont_02.txt AC 7 ms 2944 KB
subtask_1_cont_03.txt AC 6 ms 2944 KB
subtask_1_cont_04.txt AC 3 ms 2560 KB
subtask_1_killer_01.txt AC 15 ms 3584 KB
subtask_1_killer_02.txt AC 11 ms 3328 KB
subtask_1_killer_03.txt AC 15 ms 3584 KB
subtask_1_killer_04.txt AC 11 ms 3328 KB
subtask_1_max_01.txt AC 16 ms 3712 KB
subtask_1_max_02.txt AC 16 ms 3712 KB
subtask_1_max_03.txt AC 16 ms 3712 KB
subtask_1_max_04.txt AC 16 ms 3712 KB
subtask_1_min_01.txt AC 2 ms 2560 KB
subtask_1_min_02.txt AC 2 ms 2560 KB
subtask_1_rand_01.txt AC 11 ms 3200 KB
subtask_1_rand_02.txt AC 12 ms 3328 KB
subtask_1_rand_03.txt AC 3 ms 2560 KB
subtask_1_rand_04.txt AC 6 ms 2816 KB