第11题 看的最远
有N(奇数)只奶牛排成一行,为了安全2头最高大的奶牛排在队伍前端(最左边)和后端(最右边)。这些奶牛不习惯抬头,向前或向后看时,看到有和它同样高或比它高的奶牛就会被挡住视线,它会认为那就是最远的牛。
输入每头奶牛的身高,请问正中间的那头奶牛向前向后看,以为队伍的长度是多少?
输入格式
第一行1个奇整数:N,范围在[3,1000]。
第2行有N个不同的正整数,范围在[1,1000]。
输出格式
一个整数,队伍长度。
输入/输出例子1
输入:
9
20 5 10 4 10 6 1 8 20
输出:
7
解释:中间第5个高度为10的奶牛,最远只看到前面的高度为10的第3只奶牛和后面的高度为20的奶牛,以为队伍是 10 4 10 6 1 8 20
作答区域
#include<bits/stdc++.h>
using namespace std;
int n,a[105],maxx;
int main(){
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
if(a[i]>a[maxx]) maxx=i;
int ans=1;
for(int i=maxx;i<n;i++)
if(a[i]>a[i+1]) ans++;
else break;
cout<<ans;
return 0;
}