#includeusing namespace std; const int N = 1000010; int q[N]; int n; void Quick_Sort(int *arr, int begin, int end){ if(begin > end) return; //选取数组中的第一个元素为轴 int tmp = arr[begin]; int i = begin; int j = end; while(i != j){ while(arr[j] >= tmp && j > i) j--; while(arr[i] <= tmp && j > i) i++; if(j > i){ int t = arr[i]; arr[i] = arr[j]; arr[j] = t; } } //交换过程中由于数组第一个元素参与了交换 arr[begin] = arr[i]; arr[i] = tmp; Quick_Sort(arr, begin, i-1); Quick_Sort(arr, i+1, end); } int main() { scanf("%d", &n); for(int i=0; i



