测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A22610. 最长平台

填空题 中等

题目描述

最长平台

题目描述

已知一个已经从小到大排序的数组,这个数组的一个平台(Plateau)就是连续的一串值相同的元素,并且这一串元素不能再延伸。

例如,在 1,2,2,3,3,3,4,5,5,6中1,2-2,3-3-3,4,5-5,6都是平台。

试编写一个程序,接收一个数组,把这个数组最长的平台找出来。在上面的例子中3-3-3就是最长的平台。

输入

第一行有一个整数n,为数组元素的个数。第二行有n个整数,整数之间以一个空格分开。

输出

输出最长平台的长度。

输入样例

10
1 2 2 3 3 3 4 5 5 6

输出样例

3

参考答案

#include <bits/stdc++.h> using namespace std; int main() { int n, len = 0, maxLen = 0, lastNum = -1, num;//len:平台长度 maxLen:最大平台长度 lastNum:上一个数。 cin >> n; for(int i = 0; i < n; ++i) { cin >> num; if(num == lastNum)//如果这个数和上一个数相同 len++; else//如果这个数和上一个数不同 { if(len > maxLen)//求平台最大值 maxLen = len; lastNum = num; len = 1; } } if(len > maxLen) maxLen = len; cout << maxLen; return 0; }
上一题 下一题