双指针wa*3,求调
查看原帖
双指针wa*3,求调
690320
MoGuYun_12楼主2024/11/28 18:54
#include <bits/stdc++.h>

using namespace std;
#define N 100005

int n,a[N],ans,vis[N];
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];
    if(n==1){
    	cout<<1<<endl;
    	return 0;
	}
    int l=1,r=1;
    while(l<=r && r<=n){
    	vis[a[l]]=1;
    	while(r<=n){
    		if(l==r) ans=max(ans,1),r++;
    		if(!vis[a[r]]) ans=max(ans,r-l+1),vis[a[r]]=1,r++;
    		else{
    			memset(vis,0,sizeof vis);
    			l++,r=l; break;
			}
		}
	}
	cout<<ans<<endl;
	return 0;
}
2024/11/28 18:54
加载中...