1 条题解

  • 0
    @ 2025-4-7 21:19:28

    C :

    int main(int argc, char* argv[])
    {int n,m,i,a[81],b[81],j;
    while(~scanf("%d",&n)){
    while(n--)
    {
    scanf("%d",&m);
    for(i=0;i<m;i++)
    scanf("%d",&a[i]);
    j=0;
    for(i=0;i<m;i++)
    {if(i==0){if(a[0]>a[1]||a[0]<a[1])b[j++]=i;}
    else if(i==m-1){if(a[m-1]>a[m-2]||a[m-1]<a[m-2])b[j++]=i;}
    else {if((a[i]>a[i-1]&&a[i]>a[i+1])||(a[i]<a[i-1]&&a[i]<a[i+1]))b[j++]=i;}
    }
    
    for(i=0;i<j;i++)
    printf(j-i==1?"%d\n":"%d ",b[i]);
    }
    }
    	return 0;
    }
    
    

    C++ :

    #include<stdio.h>
    
    int main()
    {
    	int n,k,a[80],i,b[80],j;
    	while(scanf("%d",&n)!=EOF)
    	{
    		while(n--)
    		{
    			scanf("%d",&k);
    			for(i=0;i<k;i++)
    				scanf("%d",&a[i]);
    			j=0;
    			if(a[0]<a[1]||a[0]>a[1])
    				b[j++]=0;
    			for(i=1;i<k-1;i++)
    				if((a[i]>a[i-1]&&a[i]>a[i+1])||(a[i]<a[i-1]&&a[i]<a[i+1]))
    					b[j++]=i;
    			if(a[k-1]<a[k-2]||a[k-1]>a[k-2])
    				b[j++]=k-1;
    			for(i=0;i<j;i++)
    				printf(i==j-1?"%d\n":"%d ",b[i]);
    		}
    	}
    	return 0;
    }
    
    • 1

    信息

    ID
    1123
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者