$\huge \color{orange}{成仙之路->}$ $\huge \color{purple}{算法基础课题解}$
完整代码
#include<bits/stdc++.h>
using namespace std;
const int N = 100010;
int n,res;
int a[N],s[N];
int main()
{
cin>>n;
for(int i=0;i<n;i++) cin>>a[i];
for(int i=0,j=0;i<n;i++) //枚举每一个i,j表示往左满足条件的距离i最远的位置
{
s[a[i]]++;
while(s[a[i]]>1) s[a[j++]]--;
res=max(res,i-j+1);
}
cout<<res<<endl;
return 0;
}