已知一個已經從小到大排序的數組,這個數組的一個平臺(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 <= 1000),為數組元素的個數。第二行有n個整數,整數之間以一個空格分開。輸出輸出最長平臺的長度。樣例輸入101 2 2 3 3 3 4 5 5 6樣例輸出3#include<iostream>#include <cstdio>#include<cstring>using namespace std;int main(){ int n; cin>>n; int a[1001]; for(int i=0;i<n;i++) cin>>a[i]; int max=1; for(int i=0;i<n;)//11234 { int fz=1; int sum=0; for(int j=i+1;a[i]==a[j]&&j<n;j++) fz++; if(fz>max) { max=fz; } i+=fz; } cout<<max; return 0;}
新聞熱點
疑難解答