Pagini recente » Profil ctraul | Monitorul de evaluare | Monitorul de evaluare | Atasamentele paginii Profil Diana_Cristina_ | Cod sursa (job #1065720)
#include<fstream>
#include<ctime>
#include<algorithm>
#include<cstdlib>
using namespace std;
int A[3000005],N,K;
void dei(int st,int dr)
{
if(st==dr) return;
int i=st,j=dr,p=A[st+rand()%(dr-st+1)];
for(;;)
{
for(; A[i]<p; ++i);
for(; p<A[j]; --j);
if(i<j) swap(A[i],A[j]);
else break;
}
if(i>=K) dei(st,i);
else dei(i+1,dr);
}
int main()
{
int i;
ifstream fin("sdo.in");
ofstream fout("sdo.out");
srand(time(NULL));
fin>>N>>K;
for(i=1; i<=N; ++i)
fin>>A[i];
dei(1,N);
fout<<A[K];
fin.close();
fout.close();
return 0;
}