View Code of Problem 5

#include <stdio.h>

int main()
{
	int t, m, n;
	long long a[100001], b[100001];
	scanf("%d", &t);
	for(int i = 0; i < t; i++)
	{
		scanf("%d %d", &n, &m);
		int sign, flag;
		for(int j = 0; j < n; j++)
			scanf("%lld %lld", &a[j], &b[j]);
		for(int j = 0; j < m; j++)
		{
			sign = n-1, flag = n-1;
			while(flag != -1)
			{
				if(a[flag] > a[sign])
					sign = flag;
				else if(a[flag] == a[sign])
					if(b[flag] >= b[sign])
						sign = flag;
				flag--;
			}
			if(j == 0)
				printf("%d", sign+1);
			else
				printf(" %d", sign+1);
			a[sign] = 0;
			b[sign] = 0;
		}
		printf("\n");
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 5