#CF1485F. 复制或前缀和

复制或前缀和

复制或前缀和

  • 时间限制:2 秒
  • 内存限制:256 MiB

题目描述

给定整数数组 b1,…,bnb_1,\ldots,b_n。若整数数组 a1,…,ana_1,\ldots,a_n 对每个 ii 至少满足下列条件之一,则称其为混合数组:

  • bi=aib_i=a_i;
  • bi=∑j=1iajb_i=\sum_{j=1}^{i}a_j。

求不同混合数组的数量,对 109+710^9+7 取模。

输入格式

第一行包含测试用例数 tt。每个测试用例先给出整数 nn,下一行给出 nn 个整数 bib_i。

输出格式

对每个测试用例输出一行答案。

样例输入 1

4
3
1 -1 1
4
1 2 3 4
10
2 -1 1 -2 2 3 -5 0 2 -1
4
0 0 0 1

样例输出 1

3
8
223
1

数据范围

  • 1≤t≤1041\le t\le10^4;
  • 1≤n≤2×1051\le n\le2\times10^5;
  • −109≤bi≤109-10^9\le b_i\le10^9;
  • 单个输入中所有测试用例的 nn 之和不超过 2×1052\times10^5。

本题采用独立测试点计分。

子任务编号 分值 特殊限制
1 20 t≤4t\le4,∑n≤25\sum n\le25 且每组 n≤20n\le20
2 40 ∑n≤2000\sum n\le2000
3 无特殊限制