问题标题: 酷町堂:?????

0
0
已解决
胡晨昊
胡晨昊
修练者
修练者

题目链接: 酷町堂:4864

#include<bits/stdc++.h>

using namespace std;

string cz(string w){

    string m;

    for(int i=0;i<w.size();i++){

        if(w[i]>='0'&&w[i]<='9'){

            m[i]=w[i];

        }

    }

    return m;

}

int zh(string z){

    long long smp=0;

    for(int i=0;i<z.size();i++){

        if(z[i]>='0'&&z[i]<='9'){

            smp=smp+z[i]-'0';

        }

    }

    return smp;

}

bool bj(string x,string y){

    if(zh(x)!=zh(y)){

        return zh(x)>zh(y);

    }else if(cz(x)!=cz(y)){

        return cz(x)<cz(y);

    }else{

        return x<y;

    }

}

int main(){

    string a[100005];

    int n;

    cin>>n;

    for(int i=0;i<n;i++){

        cin>>a[i];

    }

    sort(a,a+n,bj);

    for(int i=0;i<n;i++){

        cout<<a[i]<<endl;

    }

    return 0;

}


0
已采纳
刘意阳
刘意阳
初级天翼
初级天翼

有点小长

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0
我要回答