View Code of Problem 5

#include <stdio.h>
#include <string.h>
#include <math.h>

struct lanzi{
	int id;
	int app;
	int pear;
};

int main(){
	int t,i,x,y,j;
	scanf("%d",&t);
	while(t--){
		scanf("%d %d",&x,&y);
		struct lanzi list[x],a;
		
		for(i=0;i<x;i++){
			list[i].id=i+1;
			scanf("%d %d",&list[i].app,&list[i].pear);
		}
		for(i=0;i<x-1;i++){
			for(j=0;j<x-1-i;j++){
				if(list[j].app<list[j+1].app){
					a=list[j];
					list[j]=list[j+1];
					list[j+1]=a;
				}else if(list[j].app==list[j+1].app){
					if(list[j].pear<list[j+1].pear){
						a=list[j];
						list[j]=list[j+1];
						list[j+1]=a;
					}	
				}
			}
		}
		
		for(i=0;i<y-1;i++){
			printf("%d ",list[i].id);
		}
		printf("%d",list[i].id);
		printf("\n");
	}
}

Double click to view unformatted code.


Back to problem 5