#include<cstdio> #include<cstdlib> #include<cmath> #include<algorithm> #include<iostream> using namespace std; typedef long long ll; struct node{ int a,b,id; }s[100010]; int cmp(node a,node b){ if(a.a!=b.a) return a.a>b.a; else if(a.b!=b.b) return a.b>b.b; } int main(){ int t,n,m,i,a,b; scanf("%d",&t); while(t--){ scanf("%d%d",&n,&m); for(i=0;i<n;i++){ scanf("%d%d",&s[i].a,&s[i].b); } for(i=0;i<n;i++){ s[i].id=i+1; } sort(s,s+n,cmp); for(int j=0;j<m;j++){ if(j==m-1){ printf("%d\n",s[j].id); } else{ printf("%d ",s[j].id); } } } return 0; } |
Double click to view unformatted code.