View Code of Problem 5

#include<stdio.h>
int main()
{
	int t;
	while(scanf("%d",&t)!=EOF)
	{
		while(t--)
		{
			int n,m;
			int a[100000][2];
			int v[100000];
			scanf("%d %d",&n,&m);
			for(int i=0;i<n;i++)
			{
				scanf("%d %d",&a[i][0],&a[i][1]);
			}
			while(m>0)
			{
				int max=0;
				for(int i=0;i<n;i++)
				{
					if(a[i][0]>a[max][0])
					{
						max=i;
					}
					else if(a[i][0]==a[max][0])
					{
						if(a[i][1]>a[max][1])
						{
							max=i;
						}
					}
				}
				if(m>1)
				{
					printf("%d ",max+1);
				}
				else
				{
					printf("%d\n",max+1);
				}
				m--;
				a[max][0]=-1;
				a[max][1]=-1;
			}

		}
	}
 } 

Double click to view unformatted code.


Back to problem 5