题解 | #有序序列判断#

有序序列判断

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

#include <iostream>
using namespace std;

int main() {
    int a;
    while (cin >> a) 
    { // 注意 while 处理多个 case
        int b[50], cnt1=0, cnt2=0;
        for(int i=0;i<a;i++)
        {
            cin>>b[i];
        }
        for(int i=0;i<(a-1);i++)
        {
            if(b[i]<=b[i+1])
            {
                cnt1++;
            }
            if(b[i]>=b[i+1])
            {
                cnt2++;
            }
        }
        if((cnt1==(a-1))||cnt2==(a-1))
        {
            cout<<"sorted"<<endl;
        }
        else 
        {
            cout<<"unsorted"<<endl;
        }
    }
}
// 64 位输出请用 printf("%lld")

#include <iostream>
using namespace std;

int main() {
    int a;
    while (cin >> a) 
    { // 注意 while 处理多个 case
        int b[50];
        bool flag1=false, flag2=false;
        for(int i=0;i<a;i++)
        {
            cin>>b[i];
        }
        int i=0;
	  //求的是降序 一直是小于等于
        for(i=0;i<(a-1);i++)
        {
            if(b[i]>b[i+1])
            {
                break;
            }
        }
        if(i==a-1)
        {
            flag1=true;
        }
	   //求的是升级序 一直是大于等于
        for(i=0;i<(a-1);i++)
        {
            if(b[i]<b[i+1])
            {
                break;
            }
        }
        if(i==a-1)
        {
            flag2=true;
        }
        if((flag1||flag2))
        {
            cout<<"sorted"<<endl;
        }
        else 
        {
            cout<<"unsorted"<<endl;
        }
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
06-12 16:23
已编辑
小米_软件开发
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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