#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n, k;
cin >> n >> k;
struct Data{
int i,x, y;
};
vector<Data>data;
for(int i = 0; i < n; i++){
int x, y;
cin>>x>>y;
data.emplace_back(Data{i+1,x,y});
}
sort(data.begin(),data.end(),[](const Data& lhs,const Data& rhs){
if(lhs.x + 2 * lhs.y != rhs.x+ 2*rhs.y)
return lhs.x + 2 * lhs.y > rhs.x+ 2*rhs.y;
if(lhs.y != rhs.y)
return lhs.y > rhs.y;
return lhs.i < rhs.i;
});
sort(data.begin(),data.begin()+k,[](const Data& lhs, const Data&rhs){
return lhs.i < rhs.i;
});
for(int i = 0; i < k; i++)cout<<data[i].i<<" ";
cout<<endl;
return 0;
}