Problem Description
In the world line 1.048596
“梓川…今天是第几次了?
双叶理央正在摆弄虹吸式咖啡壶,她看梓川咲太的目光已经不是傻眼或者嫌烦,而是带着悲悯
“这次不是青春期症候群的事情,而是这个。”梓川拿出了『翔子小姐』的信件
“寻求劈腿的方法?
“不,不是这样,不要胡乱误解。”梓川咲太赶紧打住双叶理央的话“你认为我应该怎么说明才对?
双叶理央想了一下,很快聪明的大脑得出了正确的答案
“我知道了,不过在此之前”,双叶理央拿出一张A4纸大小的实验记录表格“上面是我做实验的数据序列,有n个数字吧,你帮我找到其中最长的连号子串长度。
“最长的连号子串?
“连号的定义是a[i] + 1 == a[i+1],在这样的定义下长度最少为2,也可能并没有所谓连号子串,那长度为1就行了。
双叶理央正在滑手机,头也不抬的回答道
梓川看了看写了密密麻麻的数据的表格,头皮有点发麻。但也只能硬着头皮做了
“昨天看到信的时候,立刻找樱岛学姐商量就好了吧?你以事发突然的为难态度说明,就可以不经意当成是两人要面对的问题吧?
写到一半的时候,双叶理央对咲太说出了这个答案。真是漂亮,但非常遗憾,这个手段已经没法使用了
“双叶,为什么昨天没教我这个方法?
“因为你没找我商量,然后你赶紧写吧,快来不及了。
“什么来不及了?
梓川咲太猜不透双叶理央的意图
“刚刚在Line上,樱岛麻衣说她现在过来。”
Input
第一行一个整数T(T<=15),代表一共有T组样例
对于每组样例:
第一行一个整数 n, 表示序列长度(1 <= n <= 10000)
第二行 n 个整数 a[i]。(0 <= a[i] <= 10000)
题目保证n的总和不超过30000.
Output
输出一个整数,表示最长的连号子串的长度。
Sample Input
2
5
1 2 3 5 6
3
1 3 2
Sample Output
3
1
题解:水题,边输入边处理
#include <bits/stdc++.h>
#define ll long long
#define ull unsigned ling long
#define INF 0×3f3f3f3f //0×7ffffff
#define EPS 1e-6
#define maxn 10000+10
#define PI acos(-1.0)
using namespace std;
int main()
{
int t,x,pre,len,maxx;
cin>>t;
while(t--)
{
maxx=0;
len=1;
cin>>n;
cin>>pre;
for(int i=1;i<n;i++)
{
cin>>x;
if(x==pre+1)
len++;
else len=1;
pre=x;
if(maxx<len) maxx=len;
}
cout<<maxx<<endl;
}
return 0;
}