Pagini recente » Cod sursa (job #2878017) | Cod sursa (job #1674886) | Cod sursa (job #1431403) | Cod sursa (job #2344422) | Cod sursa (job #768905)
Cod sursa(job #768905)
#include<fstream>
#include<cstdlib>
using namespace std;
int a[3000005],N,K,sw;
void quicksort(int lb,int ub){
int i=lb,j=ub,p=a[lb+rand()%(ub-lb+1)];
do{
while(a[i]<p)++i;
while(a[j]>p)--j;
if(i<=j){ sw=a[i]; a[i]=a[j]; a[j]=sw; ++i; --j; }
}while(i<=j);
if(lb<j)quicksort(lb,j);
if(ub>i && i<=K)quicksort(i,ub);
}
int main(void){
ifstream fin("sdo.in");
ofstream fout("sdo.out");
fin>>N>>K;
for(int i=1;i<=N;++i)fin>>a[i];
quicksort(1,N);
fout<<a[K]<<'\n';
return 0;
}