解题思路
首先需要说明一个关键点:题面给出的条件 nums[i]+2×nums[j]=nums[k] 与样例不一致。
例如样例 2:
nums=[6,3,6]
题目内容
在多多王国的数字世界里,多多和我们遇到了一个有趣的数值问题。给定一个整数数组 nums,需要找出所有满足特定条件的特殊三元组。
问题描述
特殊三元组定义为满足以下条件的三元组 (i,j,k):
0≤i<j<k<len(nums),其中 n=len(nums),满足:
nums[i]+nums[j]×2=nums[k]
由于答案可能非常大,请返回结果对 109+7 取余数后的值。
输入描述
第一行:包含一个整数 T,表示测试用例的数量。
每个测试用例的输入如下:
- 第一行:一个整数 n,表示数组 nums 的长度(0≤n≤300000)
- 第二行:包含 n 个整数,表示数组 nums 的元素(−1000000000≤nums[i]≤1000000000)
输出描述
对于每个测试用例,输出一个整数,表示满足条件的特殊三元组的数量(对 109+7 取模)。
样例1
输入
1
4
0 1 0 0
输出
1
样例2
输入
1
3
6 3 6
输出
1
样例3
输入
1
5
8 4 2 8 4
输出
2