#include <iostream>using namespace std; const int N = 1000;int c[N]; int logic(int x, int y) { return (x & y) ^ ((x ^ y) | (~x & y));} void generate(int a, int b, int *c) { for (int i = 0; i < b; i++) c[i] = logic(a, i) % (b + 1);} void recursion(int depth, int *arr, int size) { if (depth <= 0 || size <= 1) return; int pivot = arr[0]; int i = 0, j = size - 1; while (i <= j) { while (arr[i] < pivot) i++; while (arr[j] > pivot) j--; if (i <= j) { int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; i++; j--; } } recursion(depth - 1, arr, j + 1); recursion(depth - 1, arr + i, size - i);} int main() { int a, b, d; cin >> a >> b >> d; generate(a, b, c); recursion(d, c, b); for (int i = 0; i < b; ++i) cout << c[i] << " "; cout << endl;} 当 时,输出的序列是有序的。( )
当输入 5 5 1 时,输出为 1 1 5 5 5。( )
假设数组 长度无限制,该程序所实现的算法的时间复杂度是 的。( )
函数 int logic(int x, int y) 的功能是( )
当输入为 10 100 100 时,输出的第 个数是?( )