#include <cstdio>
#include <vector>
#include <algorithm>
const int maxn = 1e6 + 5;
bool P(int a[],int k,int l,int r){
int i,len;
std::vector <int> v;
for (int i = l;i <= r;i++) v.push_back(a[i]);
std::sort(v.begin(),v.end());
len = std::unique(v.begin(),v.end()) - v.begin();
for (i = 0;i < len;i++)
if (v[i] != i + 1)
return 0;
return i >= k;
}
int main(){
int x[maxn];
int n,m,ans = 2147483647,ansa,ansb;
scanf("%d%d",&n,&m);
for (int i = 1;i <= n;i++) scanf("%d",&x[i]);
for (int a = 1;a <= n;a++)
for (int b = a + m - 1;b <= n;b++)
if (P(x,m,a,b))
if (b - a + 1 < ans)
ans = b - a + 1,ansa = a,ansb = b;
printf("%d %d\n",ansa,ansb);
return 0;
}
我知道这不是正解,就是想练练枚举,看下数据范围觉得1e5还有机会#4#5都过了,能帮我卡常过#6么,不需要AC