c语言 卡在20了 求助 orz
查看原帖
c语言 卡在20了 求助 orz
1441755
LongEating楼主2024/9/14 01:15

最长连号

题目描述

输入长度为 nn 的一个正整数序列,要求输出序列中最长连号的长度。

连号指在序列中,从小到大的连续自然数。

输入格式

第一行,一个整数 nn

第二行,nn 个整数 aia_i,之间用空格隔开。

输出格式

一个数,最长连号的个数。

样例 #1

样例输入 #1

10
1 5 6 2 3 4 5 6 8 9

样例输出 #1

5

提示

数据规模与约定

对于 100%100\% 的数据,保证 1n1041 \leq n \leq 10^41ai1091 \leq a_i \leq 10^9

代码

#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;

}

2024/9/14 01:15
加载中...