题解 | #打印极值点下标#
打印极值点下标
https://www.nowcoder.com/practice/7fd72f8ac7964ba3b8baa8735246e1f1
#include <cstdio>
#include <iostream>
using namespace std;
int main() {
int k;
int a[80];
while (scanf("%d",&k) != EOF) {
for (int i = 0; i < k; ++i) {
scanf("%d",&a[i]);
}
for (int j = 0; j < k; ++j) {
if(j == 0){
if (a[j] != a[j+1]) {
printf("%d ",j);
}
}else if (j == k-1) {
if (a[j] != a[j-1]) {
printf("%d ",j);
}
}else {
if ((a[j] > a[j-1] && a[j] > a[j+1]) || (a[j] < a[j-1] && a[j] < a[j+1])) {
printf("%d ",j);
}
}
}
printf("\n");
}
}