#include<iostream> #include<vector> #include<algorithm> #include<cmath> using namespace std; #define pai 3.1415928 struct zx { string id; string name; int score; }; bool l1(zx x,zx y) { return x.id<y.id; } bool l2(zx x,zx y) { if(x.name==y.name) return x.id<y.id; else return x.name<y.name; } bool l3(zx x,zx y) { if(x.score==y.score) return x.id<y.id; else return x.score<y.score; } int main() { int n,m; while(cin>>n&&n!=0) { cin>>m; zx a[n]; for(int i=0; i<n; i++) cin>>a[i].id>>a[i].name>>a[i].score; cout<<"Case:"<<endl; switch(m) { case 1: sort(a,a+n,l1); for(int i=0; i<n; i++) cout<<a[i].id<<" "<<a[i].name<<" "<<a[i].score<<endl; break; case 2: sort(a,a+n,l2); for(int i=0; i<n; i++) cout<<a[i].id<<" "<<a[i].name<<" "<<a[i].score<<endl; break; case 3: sort(a,a+n,l3); for(int i=0; i<n; i++) cout<<a[i].id<<" "<<a[i].name<<" "<<a[i].score<<endl; break; } } return 0; }