#include <cstdio>
using namespace std;
#define MAX 3000001
int v[MAX], n, k;
int kthelem(int st, int dr);
int main()
{
int 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);
printf("%d", kthelem(1, n));
}
int kthelem(int st, int dr)
{
int piv=v[(st+dr)/2], mici=st, mari=dr, i=st, j=dr;
while(i<=j){
while(i<=dr and v[i]<=piv){
if(v[i]<piv) v[mici++]=v[i];
i++;
}
while(j>=st and v[j]>=piv){
if(v[j]>piv) v[mari--]=v[j];
j--;
}
if(i<j){
v[mici++]=v[j];
v[mari--]=v[i];
i++;
j--;
}
}
if(mici<=k and k<=mari) return piv;
if(mici>k) return kthelem(st, mici-1);
if(k>mari) return kthelem(mari+1, dr);
}