大严 • 16小时前
using namespace std; int a[10005]; int b[10005]; int c[10005]; int main(){
int p;
int sum=0;
cin>>p;
for(int i=1;i<=p;i++)
{
cin>>a[i];
if(b[a[i]]==0)
{
sum++;
}
b[a[i]]++;
}
int t=1,s=p;
int l=1;
int r=1;
c[a[l]]=1;
while(l<=r&&r<=p)
{
if(t==sum)
{
s=min(s,r-l+1);
c[a[l]]--;
if(c[a[l]]==0)
{
t--;
}
l++;
}
else
{
r++;
if(c[a[r]]==0)
{
t++;
}
c[a[r]]++;
}
}
cout<<s;
return 0;
}
评论:
请先登录,才能进行评论