题解 | #打印极值点下标#

打印极值点下标

https://www.nowcoder.com/practice/7fd72f8ac7964ba3b8baa8735246e1f1

#include <stdio.h>

int main() {
    int n,nums[80];
    while(scanf("%d",&n)!=EOF){
        int A[80]={0},m=0;
        for(int i=0;i<n;i++){
            scanf("%d",&nums[i]);
        }
        for(int j=0,k=1,l=2;l<n;j++,k++,l++){
            if(j==0){
                if(nums[j]!=nums[k]){
                    A[m++]=0;
                }
            }
            if((nums[j]>nums[k] && nums[k]<nums[l])||
            (nums[j]<nums[k] && nums[k]>nums[l])){
                A[m++]=k;
            }
            if(l==n-1){
                if(nums[l]!=nums[l-1]){
                    A[m++]=n-1;
                }
            }
        }
        for(int i=0;i<m;i++){
            printf("%d ",A[i]);
        }
        printf("\n");
    }
    return 0;
}

全部评论

相关推荐

12-24 20:52
武汉大学 Java
点赞 评论 收藏
分享
牛马人的牛马人生:一开始看成了网吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务