#include <bits/stdc++.h> using namespace std; struct stu{ string name; int score; int sequence; }; bool cmp0(stu a,stu b){ if(a.score!=b.score) return a.score>b.score; else return a.sequence<b.sequence; } bool cmp1(stu a,stu b){ if(a.score!=b.score) return a.score<b.score; else return a.sequence<b.sequence; } int main() { int n, cho; while (cin >> n >> cho) { // 注意 while 处理多个 case stu vec[n]; for(int i=0;i<n;i++){ cin>>vec[i].name>>vec[i].score; vec[i].sequence=i; } if(cho==0) sort(vec,vec+n,cmp0); else sort(vec,vec+n,cmp1); for(int i=0;i<n;i++){ cout<<vec[i].name<<" "<<vec[i].score<<endl; } } } // 64 位输出请用 printf("%lld")