#include <fstream>
#include <iostream>
#include <vector>
int
f(std::vector <int>& v,
int b,
int e,
int k)
{
int i, j;
while (j - b != k)
{
i = b + 1;
j = e;
while (i <= j)
{
while (i <= j and v[i] <= v[b])
{
i++;
}
while (i <= j and v[b] <= v[j])
{
j--;
}
if (i < j)
{
std::swap(v[i], v[j]);
}
}
std::swap(v[j], v[b]);
if (j - b > k)
{
e = j - 1;
}
else if (j - b < k)
{
k += -j + b - 1;
b = i;
}
}
return v[j];
}
int main()
{
std::ifstream in("sdo.in");
std::ofstream out("sdo.out");
int N;
int k;
in >> N;
in >> k;
std::vector <int> v(N);
for (int i = 0; i < N; i++)
{
in >> v[i];
}
out << f(v, 0, N - 1, k - 1);
return 0;
}