设进行的总操作次数为 k
。则:
2m
,故 sum(b) = 2mk
,必须有 sum(b)
为偶数,且 2m | sum(b)
。x_i = b_i / m
(必须为非负整数),且 ∑x_i = 2k 为偶数。x_i
为度数。允许多重边、禁止自环。存在这样的多重图的充要条件是
2·max(x_i) ≤ ∑x_i。
将其按 m
约去,得到与 m
无关的必要充分条件:Tk 有一个长度为 n 的数组 {a1,a2,...,an}。初始时,数组中所有元素 ai 均为 0 。
Tk 想通过以下操作将数组 a 变为给定的数组 b 。
问有多少满足条件的正整数 m 能使得最终得到的数组为 b 。
每个测试文件均包含多组测试数据。第一行输入一个整数 T(1≤T≤103) ,代表数据组数。每组测试数据描述如下:
第一行输入一个整数 n(2≤n≤2×105) ,代表数据长度。
第二行输入 n 个正整数 b1,b2,...,bn(1≤bi≤109) ,代表目标数组 b 的各元素。
除此之外。保证单个测试文件中所有 n 的和不超过 2×105 。
对于每组测试数据,新起一行,输出一个整数,表示满足条件的正整数 m 的个数。
输入
2
3
2 4 6
2
3 5
输出
2
0