#CF1985C. 好前缀
好前缀
C. 好前缀
时间限制:2 秒
内存限制:256 兆字节
Alex 认为一个数组是好的,如果存在某个元素可以表示为所有其他元素的和(如果没有其他元素,则所有其他元素的和为 )。例如,数组 是好的,因为 。此外,数组 也是好的。但是,数组 和 不是好的。
Alex 有一个数组 。请帮他统计数组 的好非空前缀的个数。换句话说,统计满足以下条件的 ()的个数:长度为 的前缀(即 )是好的。
输入
第一行包含一个整数 ()——测试用例的数量。
每个测试用例的第一行包含一个整数 ()——数组中元素的数量。
第二行包含 个整数 ()——数组的元素。
保证所有测试用例的 之和不超过 。
输出
对于每个测试用例,输出一个整数——数组 的好非空前缀的数量。
示例
输入
7
1
0
1
1
4
1 1 2 0
5
0 1 2 1 4
7
1 1 0 3 5 2 12
7
1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 294967296
10
0 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 589934592
输出
1
0
3
3
4
1
2
注释
在第四个测试用例中,数组有五个前缀:
- 前缀 是好的,如题目描述所述;
- 前缀 不是好的,因为 ;
- 前缀 不是好的,因为 ,,;
- 前缀 是好的,因为 ;
- 前缀 是好的,因为 。
因此其中有三个是好前缀,答案为 。