题解 P1317 【低洼地】
分析一下题目:
主要是要找到两边都低的就可以+1;
所以先找到小于左边的,再找小于右边的:
#include<iostream>
using namespace std;
int n,a[10010],ans;//a存高度,ans记答案
int main(){
cin>>n;
for(int i=0;i<n;i++)//读入
cin>>a[i];
for(int i=1;i<n;i++)//开始查找
if(a[i-1]>a[i]){//当找到比左边高的开始判断
while(a[i]>=a[i+1]&&i<n-1)//如果右边还是低的话直接看下一个,直到没有或找到比右边低的
i++;
if(i!=n-1) ans++;
}
cout<<ans;//最后输出答案
return 0;
}
萌新代码,不喜勿喷