CF2275C Unrequited Love

题目描述

K1o0n 达到了只差一件乐器就能获得完全幸福的阶段,于是他买了一台二手合成器。这台乐器有 $n$ 个键,第 $i$ 个键能带来 $a_i$ 单位的观众喜爱。 单音演奏太无聊了,所以 K1o0n 学会了只用三和弦——即隔一个键按下的三个键。一个从 $x$ 开始的三和弦($1 \le x \le n-4$)是同时按下 $x$、$x+2$ 和 $x+4$ 这三个键,带来的观众喜爱值为 $a_x + a_{x+2} - a_{x+4}$。 这些键已经很旧了,每个键最多只能按一次。因此 K1o0n 想要选择恰好两组没有公共键的不同三和弦,并且要求这两组三和弦带来的观众喜爱值相等。 请你计算有多少种方法能选择两组三和弦,使得它们没有公共键且观众喜爱值相同。

输入格式

第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。 每个测试用例的第一行包含一个整数 $n$($6 \le n \le 2 \times 10^5$),表示琴键的数量。 每个测试用例的第二行包含 $n$ 个整数 $a_i$($-10^4 \le a_i \le 10^4$),表示每个键的观众喜爱值。 保证所有测试用例中 $n$ 的总和不超过 $2 \times 10^5$。

输出格式

对于每个测试用例,输出一个整数,表示两组无重复键且观众喜爱值相同的三和弦的无序对数。 注意,答案可能超出 32 位整型范围。请使用 64 位整型(在 C++ 中为 long long,在 Java 中为 long)。

说明/提示

在第一个测试用例中,唯一满足条件的二元组是 $x=1$,$y=2$:$5+4-2=1+2-(-4)$。 在第二个测试用例中,有两组二元组:$x=1$, $y=2$ 和 $x=3$, $y=2$,它们的三和弦观众喜爱值都为 $0$。 由 ChatGPT 5 翻译