最长连号
题目描述
输入长度为 n 的一个正整数序列,要求输出序列中最长连号的长度。
连号指在序列中,从小到大的连续自然数。
输入格式
第一行,一个整数 n。
第二行,n 个整数 ai,之间用空格隔开。
输出格式
一个数,最长连号的个数。
样例 #1
样例输入 #1
10
1 5 6 2 3 4 5 6 8 9
样例输出 #1
5
提示
数据规模与约定
对于 100% 的数据,保证 1≤n≤104,1≤ai≤109
代码
#include<stdio.h>
int main()
{
long int n,i,a[10000];
scanf("%ld",&n);
int cnt[10000]={1};
long int j=0,max=1;
for(i=0;i<n;i++){
scanf("%ld",&a[i]);
}
for(i=0;i<n-1;i++){
if(a[i]+1==a[i+1]){
cnt[j]++;
}else{
j++;
}
}
for(i=0;i<=j;i++){
if(cnt[i]>max){
max=cnt[i];
}
}
printf("%ld",max);
return 0;
}