#include<bits/stdc++.h>
#include<string>
#include<set>
#include<map>
using namespace std;
struct node{
string name;
int total,diff;
}E[101];
bool cmp(node a, node b){
if(a.diff != b.diff) return a.diff > b.diff;
else return a.total*1.0/a.diff < b.total*1.0/b.diff;
}
int main(){
int n;
cin>>n;
set<int> st;
string str;
int k,num;
for(int i=0;i<n;i++){
st.clear();
cin>>E[i].name>>k;
E[i].total = k;
for(int j=0;j<k;j++){
cin>>num;
st.insert(num);
}
E[i].diff = st.size();
}
int tag=0;
sort(E,E+n,cmp);
for(int i=0;i<3;i++){
if(i>=n) cout<<"-";
else cout<<E[i].name;
if(i!=2) cout<<" ";
}
return 0;
}
L2-021 点赞狂魔 (25 分)
最新推荐文章于 2024-02-26 21:04:25 发布