AcWing 786. 第k个数
原题链接
简单
#include <iostream>
using namespace std;
const int N = 100010;
void quick_sort(int l, int r, int *q){
if(l >= r){
return;
}
int i = l - 1;
int j = r + 1;
int x = q[(l + r)/2];
while(i < j){
do{
i ++;
}while(q[i] < x);
do{
j --;
}while(q[j] > x);
if(i < j){
swap(q[i], q[j]);
}
}
quick_sort(l, j, q);
quick_sort(j + 1, r, q);
}
int main(){
int n, k;
int a[N];
cin >> n >> k;
for(int i = 0; i < n; i++){
cin >> a[i];
}
quick_sort(0, n - 1, a);
cout << a[k - 1] << endl;
return 0;
}