View Code of Problem 5

#include<stdio.h>
struct Lan{
int app;
int pee;
int top;
};
int main(){
struct Lan lan[100000],lan1;
int t,n,m,i,j;
scanf("%d",&t);
while(t--){
scanf("%d%d",&n,&m);
for(i=0;i<n;i++){
  scanf("%d%d",&lan[i].app,&lan[i].pee);
  lan[i].top=i+1;}
for(i=0;i<n-1;i++)
  for(j=n-1;j>i;j--)
	  if(lan[j].app>lan[j-1].app||lan[j].app==lan[j-1].app&&lan[j].pee>lan[j-1].pee){
	  lan1=lan[j];
	  lan[j]=lan[j-1];
	  lan[j-1]=lan1;
	  }
for(i=0;i<m-1;i++)
  printf("%d ",lan[i].top);
printf("%d\n",lan[i].top);
}
}

Double click to view unformatted code.


Back to problem 5