欢迎访问我的CCF认证解题目录
题目描述
思路过程
对于折点,有两种可能
- 左边和右边都比本身大
- 左边和右边都比本身小
用for循环遍历计算即可
代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] nums = new int[n];
int cnt = 0;//计数
for ( int i = 0; i < n; i++ ) nums[i] = in.nextInt();
for ( int i = 1; i < nums.length-1; i++ ) {
if ( nums[i-1] > nums[i] && nums[i+1] > nums[i] ) cnt++;
else if ( nums[i-1] < nums[i] && nums[i+1] < nums[i] ) cnt++;
}
System.out.println(cnt);
}
}