import java.util.ArrayList;
import java.util.PriorityQueue;
import java.util.Scanner;

public class Main {
	static class person{
		int x;
		int y;
		int s;
		int no;
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner=new Scanner(System.in);
		int n=scanner.nextInt();
		int k=scanner.nextInt();
		ArrayList<person> list=new ArrayList<>();
		for (int i = 0; i < n; i++) {
			person p=new person();
			p.x=scanner.nextInt();
			p.y=scanner.nextInt();
			p.no=i+1;
			p.s=p.x+2*p.y;
			list.add(p);		
		}
		list.sort((p1,p2)->{
			if(p1.s!=p2.s)return p2.s-p1.s;
			if(p1.y!=p2.y)return p2.y-p1.y;
			return p1.no-p2.no;
		});
		PriorityQueue<Integer> queue=new PriorityQueue<>();
		for (int i = 0; i < k; i++) {
			queue.add(list.get(i).no);
		}
		for (int i = 0; i < k; i++) {
			System.out.print(queue.poll()+" ");
		}
		
		
		

	}

}

后面装序号时不能使用集合后排序的方法,会有一个超时,所以我选择优先队列,默认从小到大