Pagini recente » Cod sursa (job #361191) | Cod sursa (job #1292810) | Cod sursa (job #1057131) | Cod sursa (job #1598857) | Cod sursa (job #1821445)
#include<cstdio>
int v[3000001];
void swap(int &a,int &b){
int aux=a;
a=b;
b=aux;
}
int pivot(int st,int dr){
int p,i,j;
p=v[dr];
j=st-1;
for(i=st;i<=dr;i++){
if(v[i]<=p){
j++;
swap(v[i],v[j]);
}
}
return j;
}
void quicksort(int st,int dr,int k){
if(st==dr)
return;
int poz=pivot(st,dr);
if(k<poz)
quicksort(st,poz-1,k);
else if(k>poz)
quicksort(poz+1,dr,k);
}
int main(){
int n,k,i;
freopen("sdo.in","r",stdin);
freopen("sdo.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)
scanf("%d",&v[i]);
quicksort(1,n,k);
printf("%d",v[k]);
return 0;
}