#include<cstdio> #include <algorithm> using namespace std; const int maxn = 100010; struct lan{ int apple,pear; int id; }Lan[maxn]; bool cmp(lan a,lan b){ if(a.apple != b.apple) return a.apple > b.apple; else if(a.pear != b.pear) return a.pear > b.pear; else return a.pear < b.id; } int main(){ int t; scanf("%d",&t); while(t--){ int m,n; scanf("%d%d",&n,&m); for(int i = 0;i < n;i++){ scanf("%d%d",&Lan[i].apple,&Lan[i].pear); Lan[i].id = i; } sort(Lan,Lan+n,cmp); for(int i = 0;i < m;i++){ printf("%d",Lan[i].id); if(i != m-1) printf(" "); } printf("\n"); } } |
Double click to view unformatted code.