#include <bits/stdc++.h>
using namespace std;
struct elem {
  int a, b, i;
};
int n, k, p;
int value;
vector<elem> arr;
bool __less1(const elem& a, const elem& b) {
  if (a.b == b.b) {
    return a.a > b.a;
  }
  return a.b < b.b;
}
bool __less2(const elem& a, const elem& b) {
  if (a.a == b.a) {
    return a.b < b.b;
  }
  return a.a < b.a;
}
bool __less3(const elem& a, const elem& b) {
  if (a.b >= value) {
    if (b.b >= value) {
      return a.a < b.a;
    }
    return true;
  }
  if (b.b >= value) {
    return false;
  }
  if (a.b == b.b) {
    return a.a < b.a;
  }
  return a.b < b.b;
}
int A, B;
bool __less4(const elem& a, const elem& b) {
  if (a.b == b.b) {
    return a.a < b.a;
  }
  return a.b > b.b;
}
void compute_ans() {
  int i, j, l, t;
  sort(arr.begin(), arr.begin() + p, __less4);
  A = B = 0;
  for (i = 0; i < k; ++i) {
    A += arr[i].a;
    B += arr[i].b;
  }
}
void solve() {
  sort(arr.begin(), arr.end(), __less1);
  sort(arr.begin() + p - k, arr.end(), __less2);
  value = arr[n - k].b;
  for (int i = n - k; i < n; ++i) {
    value = min(value, arr[i].b);
  }
  sort(arr.begin(), arr.begin() + n - k, __less3);
  reverse(arr.begin(), arr.end());
}
bool check_s() {
  n = 8;
  p = 6;
  k = 4;
  arr.clear();
  for (int i = 0; i < n; ++i) {
    elem p;
    p.i = i + 1;
    p.a = rand() % 20;
    p.b = rand() % 20;
    arr.push_back(p);
  }
  solve();
  int v1, v2;
  v1 = v2 = 0;
  int mA, mB;
  compute_ans();
  mA = A;
  mB = B;
  vector<int> order;
  vector<elem> tmp(n);
  for (int i = 0; i < n; ++i) {
    order.push_back(i);
    tmp[i] = arr[i];
  }
  do {
    for (int i = 0; i < n; ++i) {
      arr[i] = tmp[order[i]];
    }
    compute_ans();
    if ((A > mA) || ((A == mA) && (B > mB))) {
      return false;
    }
  } while (next_permutation(order.begin(), order.end()));
  return true;
}
int main() {
  int i, j;
  int a, b;
  scanf("%d%d%d", &n, &p, &k);
  for (i = 0; i < n; ++i) {
    scanf("%d%d", &a, &b);
    elem p;
    p.i = i + 1;
    p.a = a;
    p.b = b;
    arr.push_back(p);
  }
  solve();
  for (i = 0; i < p; ++i) {
    printf("%d ", arr[i].i);
  }
  return 0;
}
