View Code of Problem 5

#include<stdio.h>
#include<algorithm>
using namespace std;
#define Maxsize 100001
struct lanzi{
	int num,a,b;
};
bool cmp(lanzi lz1,lanzi lz2)
{
	return lz1.a>lz2.a;
}
bool cmp2(lanzi lz1,lanzi lz2)
{
	return lz1.b>lz2.b;
}


int main()
{
	int t,n,m,i,j;
	scanf("%d",&t);
	struct lanzi lz[10000];
	while(t-->0)
	{
		i=0,j=0;
		scanf("%d%d",&n,&m);//n个篮子选m个
		int cishu=n;
		while(n-->0)
		{
			lz[i].num=i;
			scanf("%d%d",&lz[i].a,&lz[i].b);
			i++;
		}
		sort(lz,lz+cishu,cmp2);
		sort(lz,lz+cishu,cmp);
		while(m-->0)
		{
			printf("%d ",lz[j++].num+1);
		}
		printf("\n");

	}

	
	return 0;
}

Double click to view unformatted code.


Back to problem 5