View Code of Problem 5

#include <cstdio>
struct lan{
	int apple;
	int li;
};
int main(){
	int turn,m,n;
	int a,b;
	scanf("%d",&turn);
	int i;
	for(i=0;i<turn;i++){
		int j;
		scanf("%d %d",&n,&m);
		lan lanzi[n+1];
		for(j=1;j<=n;j++){
			scanf("%d %d",&a,&b);
			lanzi[j].apple=a;
			lanzi[j].li=b;
		}
		int h;
		
		for(h=1;h<=m;h++){
			lanzi[0]=lanzi[1];
			int k;
			int good=1;
			for(k=2;k<=n;k++){
				if(lanzi[0].apple<lanzi[k].apple){
					lanzi[0]=lanzi[k];
					good=k;
				}
				else if(lanzi[0].apple==lanzi[k].apple){
					if(lanzi[0].li<lanzi[k].li){
						lanzi[0]=lanzi[k];
						good=k;
					}
				}
				
			}
			printf("%d",good);
			if(h!=m)
				printf(" ");
			lanzi[good].apple=-1;
			lanzi[good].li=-1;	
		}
		printf("\n");
		
		
	}

	return 0;
} 

Double click to view unformatted code.


Back to problem 5