#include <functional> #include <iostream> #include <map> using namespace std; bool cmp(pair<string ,int> st1,pair<string ,int> st2){ return st1.second>st2.second; } bool cmp2(pair<string ,int> st1,pair<string ,int> st2){ return st1.second<st2.second; } int main() { string name; int n,m, num; while (cin>>n>>m){ vector<pair<string,int>> mp; for(int i=0;i<n;i++){ cin>>name>>num; mp.push_back(pair(name,num)); } if(m==0)stable_sort(mp.begin(),mp.end(),cmp); if(m==1) stable_sort(mp.begin(),mp.end(),cmp2); for(auto it=mp.begin();it!=mp.end();it++){ cout<<it->first<<" "<<it->second<<endl;} } } // 64 位输出请用 printf("%lld")