#include <stdio.h>
int main()
{
int n;
pass:
{
while (scanf("%d", &n) != EOF) { // 注意 while 处理多个 case
// 64 位输出请用 printf("%lld") to
int arr[n];
int i;
int count = 0;
int count1 = 0;
int count2 = 0;
for(i = 0; i< n;i++)
{
scanf("%d", &arr[i]);
}
for(i = 0; i< n - 1;i++)
{
if(arr[i] > arr[i + 1])
{
count++;
}
else if(arr[i] < arr[i + 1])
{
count2++;
}
else if (arr[i] == arr[i + 1])
{
count1++;
}
}
if(count == n - 1 || count2 == n - 1 ||count1 == n - 1)
{
printf("sorted");
}
else
{
printf("unsorted");
}
}
}
return 0;
}
return 0;
}
这个思路很有意思
设定一个变量count
依次遍历数组
每次从左至右遇见一个大于或小于或等于x的数时
count++一次
当count与n - 1次相等时即为有序

京公网安备 11010502036488号