题目描述
人生嘛,无非就是起起落落落落落落落落落落落落~~~
holly同学每天晚上会在日记本上记录一个数,代表今天的开心程度。有一天,holly同学看着日记本上之前的数字,有的高有的低,就像看到了自己起起落落的情绪。他想请你帮他数一下,他一共有多少个情绪低谷。(2 1 2 就代表中间的那一天是一个情绪低谷)(3 2 1 2 3 也是一个低谷)
输入
有多组测试数据。
对于每组数据:
第一行: N(2<N<10000)
第二行有N个正整数,分别代表n天的情绪数字x(0<x<1000)。
输出
输出每组数据中情绪低谷的个数.
例:
输入:
3
2 1 2
5
2 1 1 1 2
输出:
1
1
代码:
#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int n,a[10600];
while(scanf("%d",&n)==1)
{
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
int ans=0 ;
for(int i=1;i<n-1;i++)
{
if(a[i-1]>a[i])//遇到下坡
{
for(int j=i+1;j<n;j++)//找谷
{
if(a[j-1]<a[j])//找到谷
{
ans+=1;
i=j-1;
break;
}
}
}
}
printf("%d\n",ans);
}
}