#include <stdio.h> int main() { int n; while (scanf("%d", &n) != EOF) { int a[n];//存储输入的数组元素 int b[n];//存储极值点下标 int c=0;//存储极值点个数 for(int i=0;i<n;i++){ scanf("%d",&a[i]); } //处理第一个元素 if(a[0]!=a[1]){b[c++]=0;} for(int j=1;j<n-1;j++){ if((a[j]>a[j+1]&&a[j]>a[j-1])||(a[j]<a[j+1]&&a[j]<a[j-1])){//是极值点 b[c++]=j; } } //处理最后一个元素 if(a[n-2]!=a[n-1]) {b[c++]=n-1;} for(int k=0;k<c;k++){ printf("%d ",b[k]); } printf("\n"); } return 0; }