#12087. 珅泽教育CSP-J第一轮模拟考第二十一套 第 22 题
珅泽教育CSP-J第一轮模拟考第二十一套 第 22 题
二、阅读程序(判断题正确填 T,错误填 F;除特殊说明外,判断题 1.5 分,选择题 3 分,共计 40 分)
程序(2)
#include <bits/stdc++.h>
using namespace std;
int n, k;
int func(vector<int> &nums) {
int ret = 0;
for (int i = n; i > k; i--) {
if (nums[i] > nums[i - k]) {
swap(nums[i], nums[i - k]);
ret++;
}
}
return ret;
}
int main() {
cin >> n >> k;
vector<int> a(n + 1, 0);
for (int i = 1; i <= n; i++)
cin >> a[i];
int counter = 0, previous = -1;
while (counter != previous) {
previous = counter;
counter += func(a);
}
for (int i = 1; i <= n; i++)
cout << a[i] << ",";
cout << endl << counter << endl;
return 0;
}
假设输入的 是不超过 100000 的正整数,输入的 是不超过 的整数,且 。
当输入的 为 1 时,程序将 从小到大排序。( )
{{ select(1) }}
- 正确
- 错误