View Code of Problem 5

#include<iostream>
#include<algorithm>
using namespace std;
int pub=0;
class page{
	public:
		int num;
		int apple;
		int li;
};
int cmp(page a,page b){
	if(a.apple!=b.apple)
	return a.apple>b.apple;
	else 
	if(a.li!=b.li)
	return a.li>b.li;
	return 1;
}
int main(){
	
	page arr[100001];
	int times,m,n;
	cin>>times;
	while(times--){
		pub=0;
		cin>>m>>n;
		for(int i=0;i<m;++i){
			arr[i].num=++pub;
			cin>>arr[i].apple>>arr[i].li;
		}
		sort(arr,arr+m,cmp);
		for(int i=0;i<n;++i){
			if(i==n-1)
			cout<<arr[i].num<<endl;
			else
			cout<<arr[i].num<<" ";
		}
		
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 5