Pagini recente » Cod sursa (job #2936359) | Cod sursa (job #1017045) | Cod sursa (job #2118145) | Cod sursa (job #1822185) | Cod sursa (job #473122)
Cod sursa(job #473122)
#include<stdio.h>
#define NMAX 3000003
int n,k,i,d,/*aux,*/l,r,m;
int M[NMAX];
int qsort(int l,int r) {
d=0;
while(r!=l) {
if(M[l]>M[r]) {
//aux=M[l];
M[l]^=M[r];
M[r]^=M[l];
M[l]^=M[r];
d=1-d;
}
if(d) r--;
else l++;
}
return l;
}
int main() {
freopen("sdo.in","r",stdin);
freopen("sdo.out","w",stdout);
scanf("%d%d",&n,&k);
--k;
for(i=0;i<n;i++) scanf("%d",M+i);
l=0;
r=n-1;
do {
m=qsort(l,r);
if(m<k) l=m+1;
else r=m-1;
} while(m!=k);
printf("%d\n",M[m]);
return 0;
}