问题 6359 --龙哥取子序列

6359: 龙哥取子序列★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 22  解决: 7
[提交][状态][命题人:]

题目描述

给定n,k,q 和一个长度为n的序列a。要求在a中选出一个连续的子序列,子序列的长度需大于等于k并且子序列中的最大值小于等于q。
现在龙哥请你帮忙计算一下符合上面要求的连续子序列共有多少种?

输入

第一整数为T,表示有T (1≤T≤10000)组测试样例。
每组测试样例的第一行为三个整数n,k和q(1≤n≤2e5,1≤k≤n,−1e9≤q≤1e9),分别表示数列a的长度,要求选出的连续子数列的最小长度与所选数列的最大值。
第二行为n个整数a1,a2,...an(−1e9≤ai≤1e9)。
测试数据保证所有的n之和不超过2e5。

输出

每组测试数据输出一个整数,表示符合要求的连续子序列的数量。

样例输入
Copy
7
3 1 15
-5 0 -10
5 3 -33
8 12 9 0 5
4 3 12
12 12 10 15
4 1 -5
0 -1 2 5
5 5 0
3 -1 4 -5 -3
1 1 5
5
6 1 3
0 3 -2 5 -4 -4
样例输出
Copy
6
0
1
0
0
1
9

提示

在第1组测试数据中,可以选择[1], [2], [3], [1, 2], [2, 3], [1, 2, 3]
在第2组测试数据中,没有符合要求的连续子序列。
在第1组测试数据中,可以选择[1, 2, 3]。

来源

 

[提交][状态]