#include <stdio.h> int Whichismax(int v[],int n) { int i,max; max=0; for(i=0;i<n;i++) { if(v[i]>v[max]) max=i; } return max; } int main() { int t,n,m,a[100000][2],v[100000],i; scanf("%d",&t); while(t--) { scanf("%d %d",&n,&m); for(i=0;i<n;i++) scanf("%d %d",&a[i][0],&a[i][1]); for(i=0; i<n;i++) v[i]=a[i][0]*100000+a[i][1];//对苹果梨进行估值,*10000保证苹果是主要影响因素 for(i = 0;i < m;i ++) { if(i == m -1) printf("%d",Whichismax(v,n) + 1); else printf("%d ",Whichismax(v,n) + 1); v[Whichismax(v,n)] = -1; } printf("\n"); } return 0; } |
Double click to view unformatted code.