遍历数组,下标从1到n-2,获取到前一个点,当前点,和下一个点,如果当前点是三个值中最小或者最大的,那么这个点就是折点
满分java代码
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] numbers = new int[n];
for(int i = 0; i < n; i++){
numbers[i] = scanner.nextInt();
}
scanner.close();
int count = 0;
for(int i = 1; i < n - 1; i++){
int pre = numbers[i - 1];
int next = numbers[i + 1];
int curr = numbers[i];
if ((curr - pre) * (curr - next) > 0) {
count++;
}
}
System.out.println(count);
}
}