P7539 [COCI2009-2010#1] NOTE

· · 题解

题目传送门:P7539 [COCI2009-2010#1] NOTE

前记:

蒟蒻看到题解中大部分用了数组而浪费了空间,于是决定发一个新奇的做法。

题意:

读入 8 个数,问你它的顺序。

思路:

讲一个不用数组的方法:用一个 int 代替数组。

也许你看不懂什么意思,没关系,说明一下:

题目给的是 8,1,7,2,6,3,5,4 ,我们在读入时可以将他转换成 81726354 这个数字。然后比较时可以将该数与 1234567887654321 比较。

代码:

#include<bits/stdc++.h>
using namespace std;
int main(){
    int s=0,a;//s是转化后的数,别忘记给s初始化
    for(int i=1;i<=8;i++){
        cin>>a;
        s=s*10+a;//将8个数字转换成一个数
    }
    if(s==12345678)
        puts("ascending");
    else if(s==87654321)
        puts("descending");
    else
        puts("mixed");
    return 0;
}

代码貌似还挺短。