Pagini recente » Cod sursa (job #811992) | Cod sursa (job #357960) | Cod sursa (job #435954) | Cod sursa (job #336888) | Cod sursa (job #1347662)
#include<cstdio>
#include<stdlib.h>
#include<time.h>
using namespace std;
/*
ifstream fin("sdo.in");
ofstream fout("sdo.out");
*/
FILE * fin=fopen("sdo.in","r");
FILE * fout=fopen("sdo.out","w");
int aux,v[3000005],i,n,k;
int poz(int st,int dr){
if(st<=dr){
int i=st, j=dr, ii=0, jj=-1;
int x=rand()%(dr-st)+st;
aux=v[st];
v[st]=v[k];
v[k]=aux;
while(i<j){
if(v[i]>v[j]){
aux=v[i];
v[i]=v[j];
v[j]=aux;
aux=ii;
ii=-jj;
jj=-aux;
}
i+=ii;
j+=jj;
}
if(i==k){
return i;
}else{
if(k<i){
poz(st,i);
}else{
poz(i+1,dr);
}
}
}
}
int main(){
srand(time(0));
//fin>>n>>k;
fscanf(fin,"%d%d",&n,&k);
for(i=1;i<=n;i++){
//fin>>v[i];
fscanf(fin,"%d",&v[i]);
}
fprintf(fout,"%d",v[poz(1,n)]);
return 0;
}