【问题描述】求数列中连续数值组成的等差数列最大长度
【输入形式】
共两行,第一行输入n,表示数列的长度;第二行输入n个大于0的整数。【输出形式】
输出连续数值组成的等差数列最大的长度【样例输入】
1
3 2 1 1 5 9 13【样例输出】
4
【样例说明】无
【评分标准】0<n<1000
有c++求解,别用Java了,不会
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
技术专家团-小桥流水 2021-11-17 16:54关注代码如下:
#include <iostream> using namespace std; int main() { int a[100],i,n; int shift,nmb=0,max=0; cin >> n; for(i=0;i<n;i++) cin >> a[i]; shift = a[1]-a[0]; i=2; nmb = 2; while(i<n) { if(a[i] - a[i-1] == shift) { i++; nmb++; }else { if(nmb > max) max = nmb; shift = a[i] - a[i-1]; nmb=2; i++; } } if(nmb > max) max = nmb; cout << max<<endl; return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用