双指针
6.双指针算法
最长连续不重复子序列

输入样例:
5
1 2 2 3 5
输出样例:
3
模板:
//最长连续不重复子序列
#include<iostream>
#include<cstdio>
using namespace std;
const int N = 100010;
int n;
int a[N],s[N];
int main(){
cin>>n;
for(int i=0;i<n;i++) cin>>a[i];
int res = 0;
for(int i=0,j=0;i<n;i++){ //操作有点巧妙
s[a[i]]++;
while(s[a[i]]>1){
s[a[j]]--;
j++;
}
res=max(res,i-j+1);
}
cout<<res<<endl;
return 0;
}
数组元素的目标和

浙公网安备 33010602011771号