View Code of Problem 5

#include <stdio.h>

int main(){
	int t;
	scanf("%d",&t); 
	int l[t][100000];
	for(int i=0;i<t;i++){
		int n,m;
		scanf("%d %d",&n,&m);
		int c[n][2];
		for(int j = 0;j<n;j++){
			int a,b;
			scanf("%d %d",&a,&b);
			c[j][0]=a;
			c[j][1]=b;
		}	
		
		for(int k = 0;k<m;k++){
			int max=0;
			for(int j = 0;j<n;j++){
			if(c[j][0]>c[max][0]){
				max =j;
			}
			else if(c[j][0]==c[max][0]){
				max = c[j][1]>c[max][1]?j:max;
			}
			}
			l[i][k]=max+1;
			c[max][0]=0;c[max][1]=0;
		}
	} 
	for(int i = 0;i<t;i++){
		
		for(int n=0;n<100000&&l[i][n]!=0;n++){
			
		    printf("%d ",l[i][n]);
		}
		printf("\n");
	}
	return 0; 	
} 

Double click to view unformatted code.


Back to problem 5