AcWing 786. 第k个数
原题链接
简单
作者:
米多奇香米饼
,
2023-01-24 21:40:38
,
所有人可见
,
阅读 96
# include<iostream>
using namespace std;
const int N=1e6+10;
int n,arr[N];
void quick_Sort(int arr[],int l,int r){
if(l>=r) return;
//int bas=arr[l+r+1>>1],i=l-1,j=r+1;
int bas=arr[l+r>>1],i=l-1,j=r+1;
while(i<j){
do i++;while(arr[i]<bas);
do j--;while(arr[j]>bas);
if(i<j) swap(arr[i],arr[j]);
}
quick_Sort(arr,l,j);//quick_Sort(arr,l,i-1);
quick_Sort(arr,j+1,r);//quick_Sort(arr,i,r);
}
int main(){
int k;
scanf("%d %d",&n,&k);
for(int i=0;i<n;i++) scanf("%d",&arr[i]);
quick_Sort(arr,0,n-1);
printf("%d",arr[k-1]);
return 0;
}