绝不放过任何一个视线之内的宝箱!(清籁岛篇)
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

        在一座环形岛屿上有 n 个宝箱,按顺时针顺序编号为 1n ,现在派蒙想开启这些宝箱,但是每次开启宝箱将会让派蒙的体力增加或者减少或者不变。最开始派蒙的体力值为 0 ,一旦派蒙的体力低于 0 ,派蒙就会体力不支而晕倒。

        现在派蒙可以从任意一个宝箱地点出发,按顺时针方向开启宝箱,也就是说派蒙可以按 1...n 或者 的顺序一个个开启宝箱。

        派蒙想知道可以从多少个宝箱地点出发,可以让派蒙开启完所有宝箱,并且全程不晕倒。

输入描述:

第一行为一个正整数 n),表示 n 个宝箱。

第二行为 n 个空格隔开的数 表示第 i 个宝箱会改变派蒙体力的值,正数为增加,负数为减少,0 为不变。

输出描述:

输出一个数,表示可行的方案数。
示例1

输入

复制
4
-3 5 1 2

输出

复制
2

说明

可行的顺序方案为[5 1 2 -3]或[1 2 -3 5]