首页 > 编程知识 正文

最长上升连续子序列,puthon连续不重复列表

时间:2023-05-04 13:18:40 阅读:259236 作者:2587


这道题我刚开始想用狂野的黑夜。然后看了老师的算法,还是觉得老师的代码更简单。原理也很简单,用一个s[i]数组标记,然后如果s[i]>1时,说明出现了重复的数字,我们就用j往后遍历,直到把这个数字标记解掉。
代码如下

#include<iostream>#include<algorithm>using namespace std;const int N=1e5+10;int a[N],b[N];int main(void){ int n,res=0; cin>>n; for(int i=1,j=1;i<=n;i++) { cin>>a[i]; b[a[i]]++; while(b[a[i]]>1) b[a[j]]--,j++; res=max(res,i-j+1); } cout<<res;}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。