艾弗里有一个由
数组中的第 个整数是
。
如果一个连续的子数组的长度为 ,并且按顺序包含整数
,则称它为
例如, 是
请帮助艾弗里计算她的数组中有多少个
输入格式
第一行包含整数 ,表示共有
对于每组数据,第一行包含两个整数 和
。
第二行包含 个整数,其中第
个表示
。
输出格式
每组数据输出一个结果,每个结果占一行。
结果表示为 Case #x: y
,其中 为组别编号(从
开始),
为
数据范围
输入样例:
3
12 3
1 2 3 7 9 3 2 1 8 3 2 1
4 2
101 100 99 98
9 6
100 7 6 5 4 3 2 1 100
输出样例:
Case #1: 2
Case #2: 0
Case #3: 1
样例解释
在示例 中,有两个
1 2 3 7 9 3 2 1 8 3 2 1
1 2 3 7 9 3 2 1 8 3 2 1
在示例 中,没有
在示例 中,有一个
100 7 6 5 4 3 2 1 100
#include<iostream>
using namespace std;
const int N = 200010;
int n, k;
int q[N];
int main(){
int t;
scanf("%d", &t);
for(int l = 1; l <= t; l++){
scanf("%d%d", &n, &k);
for(int i = 0; i < n; i++) scanf("%d", &q[i]);
int res = 0;
for(int i = 0; i < n; i++)
if(q[i] == k){
int j = i + 1;
while(j < n && q[j] + 1 == q[j-1]) j++;
if(q[j-1] == 1) res++;
i = j - 1;
}
printf("Case #%d: %d\n", l, res);
}
return 0;
}