Subtask3全wa
查看原帖
Subtask3全wa
555065
ChrysanthBlossom楼主2022/5/13 13:22

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;
}

2022/5/13 13:22
加载中...