#include<iostream> using namespace std; #include<algorithm> struct basket { int anum; int bnum; int pos; }; bool compare(basket b1,basket b2) { if(b1.anum!=b2.anum) { return b1.anum>b2.anum; } else { if(b1.bnum!=b2.bnum) { return b1.bnum>b2.bnum; } else { return b1.pos<b2.pos; } } } int main() { int t,n,m; cin>>t; while(t--) { cin>>n>>m; basket bas[n]; for(int i=0;i<n;i++) { cin>>bas[i].anum>>bas[i].bnum; bas[i].pos=i; } sort(bas,bas+n,compare); for(int i=0;i<m;i++) { cout<<bas[i].pos+1; if(i<m-1) { cout<<" "; } } cout<<endl; } } |
Double click to view unformatted code.