【思维、双指针算法】AcWing 799.最长连续不重复子序列
#include<bits/stdc++.h> #define rep(i,a,b) for(int i=a;i<=b;i++) using namespace std; const int N=1e5+10; int a[N],cnt[N]; int main(){ int n,res=0; cin>>n; rep(i,0,n-1) cin>>a[i]; for(int i=0,j=0;i<n;i++){ cnt[a[i]]++; while(cnt[a[i]]>1){ cnt[a[j]]--; j++; } res=max(res,i-j+1); } cout<<res; return 0; }
Keep it simple and stupid
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步