#include <stdio.h>
#include <stdlib.h>

typedef struct {
    int stealth;
    int sharpness;
    int index; // original position (1-based)
} Duelist;

// Comparison function for sorting
int compare(const void *a, const void *b) {
    Duelist d1 = (Duelist)a;
    Duelist d2 = (Duelist)b;

    if (d1->stealth == d2->stealth) {
        return d1->sharpness - d2->sharpness; // lower sharpness first
    }
    return d1->stealth - d2->stealth; // lower stealth first
}

int main() {
    int N, K;
    if (scanf("%d %d", &N, &K) != 2) {
        printf("Invalid input\n");
        return 0;
    }

    if (N <= 0 || K <= 0 || K > N) {
        printf("Invalid input\n");
        return 0;
    }

    Duelist duelists[N];
    for (int i = 0; i < N; i++) {
        if (scanf("%d %d", &duelists[i].stealth, &duelists[i].sharpness) != 2) {
            printf("Invalid input\n");
            return 0;
        }
        if (duelists[i].stealth < 0 || duelists[i].sharpness < 0) {
            printf("Invalid input\n");
            return 0;
        }
        duelists[i].index = i + 1; // 1-based index
    }

    // Sort duelists
    qsort(duelists, N, sizeof(Duelist), compare);

    // Print first K indices
    for (int i = 0; i < K; i++) {
        printf("%d", duelists[i].index);
        if (i < K - 1) printf(" ");
    }
    printf("\n");

    return 0;
}