#LQ1212. 和与乘积

和与乘积

题目描述

给定一个数列 A=(a1,a2,,an)A = (a_1, a_2, …… , a_n),问有多少个区间 [L,R][L, R] 满足区间内元素的乘积等于他们的和,即 aLaL+1aR=aL+aL+1++aRa_L ·a_{L+1} …… a_R = a_L + a_{L+1} + …… + a_R

输入描述

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

第二行包含 nn 个整数,依次表示数列中的数 a1,a2,,ana_1, a_2, …… , a_n

输出描述

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

4
1 3 2 2
6

样例解释

符合条件的区间为 [1,1],[1,3],[2,2],[3,3],[3,4],[4,4][1, 1], [1, 3], [2, 2], [3, 3], [3, 4], [4, 4]

评测用例规模与约定

对于 20% 的评测用例,n3000n \leq 3000

对于 50% 的评测用例,n20000n \leq 20000

对于所有评测用例,1n200000,1ai2000001 \leq n \leq 200000, 1 \leq a_i \leq 200000