第六题 低洼地(di)
【问题描述】
一组数,分别表示地平线的高度变化。高度值为整数,相邻高度用直线连接。找出并统计有多少个可能积水的低洼地?
如图:地高变化为 0 1 0 2 1 2 0 0 2 0
【输入格式】
两行,第一行n(3≤n≤100000),表示有n个数。
第2行连续n个数表示地平线高度变化的数据,保证首尾为0 (0≤高度≤1000) 。
【输出格式】
一个数,可能积水低洼地的数目。
【输入样例】
10
0 1 0 2 1 2 0 0 2 0
【输出样例】
3
只需要判断相邻三个即可
上代码!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#include<bits/stdc++.h>
using namespace std;
int n,a[10005],ans;
int main()
{
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=2;i<=n-1;i++) if(a[i-1]>a[i]&&a[i+1]>=a[i]) ans++;
cout<<ans;
return 0;
}
欢迎参考