rt,一直有两个点跳不出来,求调(全盘打似也行)。
#include<bits/stdc++.h>
using namespace std;
int n,a[200005],ans,sum;
map<int,bool>p;
int main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>n;
for(int i=1;i<=n;i++)cin>>a[i];
for(int i=2;i<=n;i+=2){
if(a[i]!=a[i-1]){
ans=max(ans,sum*2);
p.clear();
sum=0;
}
else{
if(p.count(a[i])){
ans=max(ans,sum*2);
sum=0;
p.clear();
}
p[a[i]]=1;
sum++;
}
}ans=max(ans,sum*2);
p.clear();
sum=0;
for(int i=3;i<=n;i+=2){
if(a[i]!=a[i-1]){
ans=max(ans,sum*2);
p.clear();
sum=0;
}
else{
if(p.count(a[i])){
ans=max(ans,sum*2);
sum=0;
p.clear();
}
p[a[i]]=1;
sum++;
}
}ans=max(ans,sum*2);
cout<<ans<<endl;
return 0;
}