#include<stdio.h> #include<algorithm> #include<string.h> #include<iostream> #include<math.h> #include<vector> using namespace std; struct basket{ int a,b,no; }Ba[100005]; bool cmp(basket a,basket b) { if(a.a!=b.a) return a.a>b.a; else if(a.b!=b.b) return a.b>b.b; else return a.no<b.no; } int main() { int t,n,m,i,j,k; scanf("%d",&t); while(t) { scanf("%d %d",&n,&m); for(i=0;i<n;i++) { scanf("%d %d",&Ba[i].a,&Ba[i].b); Ba[i].no=i; } sort(Ba,Ba+n,cmp); for(i=0;i<m;i++) { if(i!=0) printf(" %d",Ba[i].no+1); else printf("%d",Ba[i].no+1); } t--; printf("\n"); } return 0; } |
Double click to view unformatted code.