牛牛的未知序列
题号:NC21407
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld

题目描述

牛牛有一个长度未知的序列A,每个元素是浮点型的
现在牛牛得到了一个整数序列C,
如果C[i]是大于0的,那么A序列中连续的-C[i]项的和都是负数
如果C[i]是小于0的,那么A序列中连续的C[i]项的和都是正数
请你算出A序列的最长可能的长度,如果存在一个无限长的A序列,输出-1

输入描述:

第一行输入一个整数n (1 ≤ n ≤ 50)
第二行输入n个整数表示C数组 范围为[-1000,1000]

输出描述:

输出一个整数
示例1

输入

复制
2
-2 3

输出

复制
3
示例2

输入

复制
1
524

输出

复制
-1
示例3

输入

复制
2
1 -1

输出

复制
0
示例4

输入

复制
2
11 -7

输出

复制
16
示例5

输入

复制
4
-227 690 590 -524

输出

复制
713

备注:

子任务1:n <= 10
子任务2:n <= 20
子任务3:无限制