题目:
样例:
代码:
#include<cstdio>
void findi(int a[],int n){
int t=0;
if(a[0]!=a[1]){
t++;
printf("0 ");
}
for(int i=1;i<n-1;i++){
int left=i-1;
int right=i+1;
if(a[i]>a[left]&&a[i]>a[right]){
t++;
printf("%d ",i);
}
else if(a[i]<a[left]&&a[i]<a[right]){
t++;
printf("%d ",i);
}
}
if(a[n-1]!=a[n-2]){
t++;
printf("%d",n-1);
}
if(t!=0){ //这个条件一定要有,因为题目说没有极值不输出任何东西,包括换行符也不可以
printf("\n");
}
}
int main(){
int m;
while(scanf("%d",&m)!=EOF){
while(m--){
int n;
scanf("%d",&n);
int num[100];
for(int i=0;i<n;i++){
scanf("%d",&num[i]);
}
findi(num,n);
}
}
return 0;
}