rt 代码如下:
#include<bits/stdc++.h>
#define maxn 505
using namespace std;
unsigned long long n,t,ha[maxn],a[maxn],ans[maxn][2];
string s;
//判断第x人是否应该在y人前(最佳)
//最差反过来就行了
int cmp(int x,int y){
if(a[x]+500==a[y])return ha[x]<ha[y];
return a[x]+500>a[y];
}
unsigned long long hashe(string s){
int len=s.length(),sum=0;
for(int i=0;i<len;i++){
sum*=29;
sum+=s[i]-'a'+1;
}
return sum;
}
int main(){
cin>>n;
for(int i=0;i<n;i++){
cin>>s;
ha[i]=hashe(s);
for(int j=0;j<5;j++){
cin>>t;
a[i]+=t;
}
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(i==j)continue;
ans[i][0]+=1-cmp(i,j);
ans[j][1]+=cmp(i,j);
}
}
for(int i=0;i<n;i++)
cout<<ans[i][0]+1<<' '<<ans[i][1]+1<<endl;
return 0;
}