CF2064F We Be Summing

题目描述

给定一个长度为 $n$ 的数组 $a$ 和一个整数 $k$。 称一个非空且长度为 $m$ 的数组 $b$ 为史诗子数组(epic subarray),当且仅当存在一个整数 $i$ 满足 $1 \le i < m$ 且 $\min(b_1,\ldots,b_i) + \max(b_{i + 1},\ldots,b_m) = k$。 请计算数组 $a$ 中史诗子数组 $^{\text{∗}}$ 的数量。 $^{\text{∗}}$ 若数组 $a$ 可以通过从数组 $b$ 的开头和结尾删除若干(可能为零或全部)元素得到,则称 $a$ 是 $b$ 的子数组(subarray)。

输入格式

第一行包含一个整数 $t$($1 \le t \le 10^4$)——测试用例数量。 每个测试用例的第一行包含两个整数 $n$ 和 $k$($2 \le n \le 2 \cdot 10^5$;$n < k < 2 \cdot n$)——分别表示数组 $a$ 的长度和参数 $k$。 每个测试用例的第二行包含 $n$ 个整数 $a_1,a_2,\ldots,a_n$($1 \le a_i \le n$)。 所有测试用例的 $n$ 之和不超过 $2 \cdot 10^5$。

输出格式

对于每个测试用例,输出数组 $a$ 中史诗连续子数组的数量。

说明/提示

第一个测试用例中所有史诗子数组如下: - $[2, 3, 4, 5]$,因为 $\min(2, 3) + \max(4, 5) = 2 + 5 = 7$。 - $[3, 4]$,因为 $\min(3) + \max(4) = 3 + 4 = 7$。 第二个测试用例中,所有包含至少一个 $6$ 和至少一个 $7$ 的子数组均为史诗子数组。