题解 | #有序序列判断#

有序序列判断

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

#include<stdio.h>

int main()
{
    int n=0,arr[51];
    scanf("%d ",&n);
    for(int i = 0;i<n;++i)    //接收数字
    {
        scanf("%d ",&arr[i]);
    }
    int j;
    for(j = 0;j<n-2;++j)    // 比较 1和2 2和3 每两个元素的差,如果都是大于零,或者小于零,就是有序的,如果不同,那就是无序
    {
        int x = arr[j]-arr[j+1];
        int y = arr[j+1]-arr[j+2];
        if(x>0&&y<0||x<0&&y>0)
        {
            printf("unsorted\n"); break;
        }
    }
    if(j==(n-2))        //上面的循环排除了无序的情况,循环结束j的值固定,然后输出有序
        printf("sorted\n");
    return 0;
}

全部评论

相关推荐

06-10 21:15
门头沟学院 Java
宁阿:好多这种没🧠的公司,他们估计都不知道毕业的人不能给安排实习岗
实习吐槽大会
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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