#include <bits/stdc++.h>
void quick(int V[], int inicio, int fin);
int main() {
  int nComputadoras, kUsuarios, x;
  do {
    scanf("%d", &nComputadoras);
  } while (!(nComputadoras >= 1 && nComputadoras <= 100));
  do {
    scanf("%d", &kUsuarios);
  } while (!(kUsuarios >= 1 && kUsuarios <= nComputadoras));
  int speed[nComputadoras];
  for (x = 0; x < nComputadoras; x++) {
    do {
      scanf("%d", &speed[x]);
    } while (!(speed[x] >= 16 && speed[x] <= 32768));
  }
  quick(speed, 0, nComputadoras - 1);
  printf("%d", speed[nComputadoras - kUsuarios]);
  return 0;
}
void quick(int V[], int inicio, int fin) {
  int x, y, centro, pivot;
  centro = (inicio + fin) / 2;
  pivot = V[centro];
  x = inicio;
  y = fin;
  do {
    while (V[x] < pivot) {
      x++;
    }
    while (V[y] > pivot) {
      y--;
    }
    if (x <= y) {
      int t;
      t = V[x];
      V[x] = V[y];
      V[y] = t;
      x++;
      y--;
    }
  } while (x <= y);
  if (inicio < y) {
    quick(V, inicio, y);
  }
  if (x < fin) {
    quick(V, x, fin);
  }
}
