P1638 逛画展
点击查看代码
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int n,m;
int a[N];
int cnt[N];
int main()
{
ios::sync_with_stdio(0),cin.tie(0);
cin>>n>>m;
for(int i=1;i<=n;i++) cin>>a[i];
int tot=0;
int al,ar;
int ans=1e9;
int l=1;
for(int r=1;r<=n;r++){
if(cnt[a[r]]==0) tot++;
cnt[a[r]]++;
while(tot==m){
if(ans>r-l+1){
ans=r-l+1;
al=l,ar=r;
}
cnt[a[l]]--;
if(cnt[a[l]]==0) tot--;
l++;
}
}
cout<<al<<' '<<ar<<endl;
return 0;
}

浙公网安备 33010602011771号