L2-3 名人堂与代金券 (25 分)
#include<bits/stdc++.h>
using namespace std;
struct node{
string a;
int sc;
int ran;
}b[10002];
int cmp(node a,node b){
if(a.sc!=b.sc)return a.sc>b.sc;
else return a.a<b.a;
}
int main(){
int n,g,k;
cin>>n>>g>>k;
int sum =0;
for(int i=1;i<=n;i++){
cin>>b[i].a>>b[i].sc;
if(b[i].sc>=g&&b[i].sc<=100)sum+=50;
if(b[i].sc>=60&&b[i].sc<g)sum+=20;
}
sort(b+1,b+1+n,cmp);
int pre = 1;
b[1].ran = 1;
int M = b[1].sc;
for(int i=2;i<=n;i++){
if(b[i].sc==M){
b[i].ran = pre;
}
else{
pre = i;
b[i].ran = pre;
M = b[i].sc;
}
}
cout<<sum<<endl;
for(int i=1;i<=n;i++){
if(b[i].ran<=k){
cout<<b[i].ran<<" "<<b[i].a<<" "<<b[i].sc<<endl;
}
else break;
}
return 0;
}