题解 | #有序序列判断#

有序序列判断

https://www.nowcoder.com/practice/22e87f8a8d764a6582710f38d1b40c6e

#include <stdio.h>

int main() {
    int N;
    scanf("%d",&N);
    int arr[50];
    for(int t=0;t<N;t++)
    {
        scanf("%d",&arr[t]);
    }
    int s=0;
    for(int i=0;i<N;i++)
    {
        if(arr[i]!=arr[i+1])
        {
            s=s+1;
        }
    }
    if(s==0)
    {
        printf("sorted");
        return 0;
    }
    int brr[50];
    int crr[50];
    for(int i=0;i<N;i++)
    {
        brr[i]=arr[i];
        crr[i]=arr[i];
    }
    for(int i=0;i<N;i++)
    {
        for(int j=0;j<N;j++)
        {
            if(brr[i]<brr[j])
            {
                int t=brr[j];
                brr[j]=brr[i];
                brr[i]=t;
            }
        }
    }
    for(int i=0;i<N;i++)
    {
        for(int j=0;j<N;j++)
        {
            if(crr[i]>crr[j])
            {
                int t=crr[j];
                crr[j]=crr[i];
                crr[i]=t;
            }
        }
    }
    int count=0;
    for(int i=0;i<N;i++)
    {
        if(arr[i]!=brr[i])
        {
            count =count+1;
        }
    }
    int count0=0;
    for(int i=0;i<N;i++)
    {
        if(arr[i]!=crr[i])
        {
            count0=count0+1;
        }
    }
    if(count==0||count0==0)
    {
        printf("sorted");
    }
    else 
    {
        printf("unsorted");
    }
    return 0;
}

#刷题#
全部评论

相关推荐

10-17 16:04
已编辑
南京大学 C++
陈启鸣:恭喜
投递腾讯等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务