Unique Snowflakes UVA - 11572
问题描述:

输入输出说明:

**思路:**滑动窗口算法
设置l,r左右两个游标,
只要没有重复的一直r++;
知道遇到重复的,跳出内层循环,更新值,并去除a[l],l++;

ac code:
#include<bits/stdc++.h> using namespace std; typedef long long ll; int a[
1000002]; int n; int main(){ int t; scanf("%d",&t); while(t--){ scanf("%d",&n);
for(int i=1;i<=n;i++){ scanf("%d",&a[i]); } ll maxlen=0; ll l=1,r=1; set<int> s;
while(r<=n){ while(r<=n&&!s.count(a[r]))s.insert(a[r++]); maxlen=max(maxlen,r-l)
; s.erase(a[l++]); } printf("%lld\n",maxlen); } return 0; }

技术
©2019-2020 Toolsou All rights reserved,
html写樱花树,写樱花树的作文java四大函数式接口(重点,简单)某东14薪变16薪,是诚意还是套路?os模块的简单使用HashMap详解让人意想不到的Python之樱花树(turtle库的华丽样式)浏览器内核(理解)