#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct node{
int id;
string name;
int score;
}Node[100052];
int N,C;
bool cmp1(node a,node b){
return a.id<b.id;
}
bool cmp2(node a,node b){
if(a.name==b.name){
return a.id<b.id;
} else{
return a.name<b.name;
}
}
bool cmp3(node a,node b){
if(a.score==b.score){
return a.id<b.id;
} else{
return a.score<b.score;
}
}
int main() {
vector<node> v;
cin>>N>>C;
for(int i=0;i<N;i++){
cin>>Node[i].id;
cin>>Node[i].name;
cin>>Node[i].score;
v.push_back(Node[i]);
}
if(C==1){
sort(v.begin(),v.end(),cmp1);
}
if(C==2){
sort(v.begin(),v.end(),cmp2);
}
if(C==3){
sort(v.begin(),v.end(),cmp3);
}
for(int i=0;i<v.size();i++){
printf("%05d %s %d\n",v[i].id,v[i].name.c_str(),v[i].score);
}
return 0;
}
C++ 比较字符串大小可以直接使用> < ==来比较。。。。
至于为啥我也不知道。