农夫约翰的 品种邻近(寒假每日一题 10)_输出格式 头奶牛排成一排,每头奶牛都用其品种 品种邻近(寒假每日一题 10)_输出格式_02 进行描述。

如果两头相同品种的牛靠得太近,它们就会吵架。

具体的说,如果同一品种的两头奶牛在队列中的位置相差不超过 品种邻近(寒假每日一题 10)_ios_03,我们就称这是一对拥挤的牛。

请计算品种 品种邻近(寒假每日一题 10)_输出格式_02 最大的拥挤奶牛对的品种 品种邻近(寒假每日一题 10)_输出格式_02

输入格式
第一行包含两个整数 品种邻近(寒假每日一题 10)_输出格式品种邻近(寒假每日一题 10)_ios_03

接下来 品种邻近(寒假每日一题 10)_输出格式 行,每行包含一个整数表示队列中一头奶牛的品种 品种邻近(寒假每日一题 10)_输出格式_02

输出格式
输出品种 品种邻近(寒假每日一题 10)_输出格式_02 最大的拥挤奶牛对的品种 品种邻近(寒假每日一题 10)_输出格式_02

如果不存在拥挤奶牛队,则输出 品种邻近(寒假每日一题 10)_i++_12

数据范围
品种邻近(寒假每日一题 10)_输出格式_13
品种 品种邻近(寒假每日一题 10)_输出格式_02 范围 品种邻近(寒假每日一题 10)_输出格式_15

输入样例:

6 3
7
3
4
2
3
4

输出样例:

4

样例解释
一对品种 品种邻近(寒假每日一题 10)_输出格式_02品种邻近(寒假每日一题 10)_C++_17 的奶牛以及一对品种 品种邻近(寒假每日一题 10)_输出格式_02品种邻近(寒假每日一题 10)_ios_19 的奶牛属于拥挤奶牛对。

所以,最大拥挤奶牛对的品种 品种邻近(寒假每日一题 10)_输出格式_02品种邻近(寒假每日一题 10)_ios_19


​简单模拟​

#include<iostream>

using namespace std;

const int N = 1e6 + 10;

int n, k;
int q[N], idc[N];

int main(){

scanf("%d%d", &n, &k);

for(int i = 0; i < n; i++) scanf("%d", &q[i]);

int res = -1;

for(int i = 0; i < n; i++){

int x = q[i];
if(i > k) idc[q[i - k - 1]]--;
idc[x]++;
if(idc[x] > 1) res = max(res, x);
}

printf("%d\n", res);

return 0;
}