20077 - 和与乘积

通过次数

5

提交次数

10

时间限制 : 1 秒
内存限制 : 128 MB

给定一个数列 A = (a_1, a_2, \cdots, a_n),问有多少个区间 [L, R] 满足区间内元素的乘积等于他们的和,即:

a_L \cdot a_L+1 \cdots a_R = a_L + a_L+1 + \cdots + a_R

(注:a_{L+1}的L+1是下标)

输入

第一行包含一个整数 n,表示数列的长度。

第二行包含 n 个整数,依次表示数列中的数 a_1, a_2, \cdots, a_n

输出

输出仅一行,包含一个整数表示满足如上条件的区间的个数。

样例

输入

4
1 3 2 2

输出

6

提示

样例解释

符合条件的区间为:

  • [1, 1]1 = 1
  • [1, 3]1 \times 3 \times 2 = 61 + 3 + 2 = 6
  • [2, 2]3 = 3
  • [3, 3]2 = 2
  • [3, 4]2 \times 2 = 42 + 2 = 4
  • [4, 4]2 = 2

6 个。

数据范围

  • 1 \le n \le 200000
  • 1 \le a_i \le 200000