#include <iostream>
#include <fstream>
using namespace std;
#define nmax 3000005
int a[nmax],n,m;
int oszt(int b,int j)
{
int i=b-1;
int k=j+1;
int random = b+rand()%(j-b+1);
int t=a[random];
while(1)
{
do{
i++;
}while(a[i]<t);
do{
k--;
}while(a[k]>t);
if(i<k)
swap(a[i],a[k]);
else return k;
}
return 0;
}
void quick(int b,int j,int m)
{
if(b==j)
return;
int koz=oszt(b,j);
int t=koz-b+1;
if(t>=m)
quick(b,koz,m);
else
quick(koz+1,j,m-t);
}
int main()
{
srand(time(NULL));
ifstream be("sdo.in");
ofstream ki("sdo.out");
be>>n>>m;
for(int i=1;i<=n;i++)
be>>a[i];
quick(1,n,m);
ki<<a[m]<<endl;
return 0;
}