玄关
查看原帖
玄关
1185854
ly_magician楼主2024/11/8 22:33
#include<bits/stdc++.h>
using namespace std;
int l=1,r=1,at[1000010],ds[20010],js,lt,rt,mxans=1e9,n,m;
int main(){
	scanf("%d %d",&n,&m);
	for(int i=1;i<=n;i++) scanf("%d",&at[i]);
	ds[at[1]]=1,js=1;
	while(l<=n){
		ds[at[l-1]]--;
		if(ds[at[l-1]]==0) js--;
		while(js<m&&r<=n){
			r++;
			if(ds[at[r]]==0) js++;
			ds[at[r]]++;
		}
		if(js==m&&r-l+1<mxans) mxans=r-l+1,lt=l;rt=r;
		l++;
	}
	printf("%d %d\n",lt,rt);
	return 0;
}
2024/11/8 22:33
加载中...