#811. 堆雪人
堆雪人
题目描述
为了生产雪人,工厂准备了三条循环传送带,每条传送带上都有 个雪球(位置按顺序循环),三条传送带分别用于头、身体、腿。 第一条传送带上的球大小依次为 ;第二条为 ;第三条为 。由于传送带是循环的,我们把下标看作模 的(例如位置 与位置 是相同的球)。
每个雪人由三颗球组成,要求头 身体 腿(即若头、身体、腿的大小分别为 ,则必须满足 )。生产程序如下:先选定三个起始下标 (),然后按顺序组装 个雪人:
- 第 个雪人用球 ;
- 第 个雪人用球 ;
- 第 个雪人用球 ;
这里的下标均按循环(模 )处理。要求所选的 能保证 对所有这 个雪人都满足 稳定条件 (对所有 )。
请你统计满足条件的三元组 的数量。
输入格式
-
第一行包含一个整数 ()——测试用例数。
-
每个测试用例包含四行:
- 第一行包含一个整数 ();
- 第二行包含 个整数 ();
- 第三行包含 个整数 ();
- 第四行包含 个整数 ()。
额外限制:所有测试用例中 的总和不超过 。
输出格式
对于每个测试用例,输出一行,包含一个整数——满足条件的 三元组数量。
样例输入
4
2
1 2
3 4
5 4
3
1 1 1
2 2 2
3 3 3
4
1 2 1 2
3 3 2 2
5 5 5 5
5
1 4 2 3 5
6 4 5 7 6
7 5 8 10 10
样例输出
4
27
0
10
说明
样例解释
- 第一个测试例(): 满足条件的 有 种,如题面示例所列。
- 第二个测试例中任意 都满足条件,因此共有 种组合。
- 第三个测试例任何选择都会出现 与 相等的情况,所以没有合法三元组。
- 第四个测试例共有 种合法选择。