给定t组数据 每组数据包含一个整数n,和n个整数 请给出每组的n个整数是否为非降序排列的判断,是的话输出yes,否则输出no 非降序排列是指一串数字里相邻的两个数字a和ai+1一定满足ai<=ai+1 如果数列只有一个元素,则默认满足非降序性质
时间: 2023-06-15 19:07:51 浏览: 134
可以使用一个变量来记录上一个数的值,然后遍历整个数列,如果当前数小于上一个数,则不满足非降序排列,输出no;否则将当前数赋值给上一个数,继续遍历。如果遍历完整个数列都没有输出no,则说明该数列是非降序排列,输出yes。
以下是C++代码实现:
```c++
#include <iostream>
using namespace std;
int main() {
int t, n, prev, cur;
cin >> t;
while (t--) {
cin >> n;
cin >> prev; // 先读入第一个数
bool isNonDecreasing = true;
for (int i = 1; i < n; i++) {
cin >> cur;
if (cur < prev) { // 不满足非降序排列
isNonDecreasing = false;
}
prev = cur; // 更新上一个数
}
if (isNonDecreasing) {
cout << "yes" << endl;
} else {
cout << "no" << endl;
}
}
return 0;
}
```
输入格式为:
```
t
n1 a1 a2 ... an1
n2 b1 b2 ... bn2
...
nt c1 c2 ... cnt
```
其中,t表示数据组数,ni表示第i组数据中包含的整数个数,ai表示第i组数据中的第j个整数。
阅读全文