题解 | #大整数排序#

大整数排序

https://www.nowcoder.com/practice/b744af632ac4499aa485d7bb048bb0aa

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
//key:如果两个字符串长度不同,则长度大者为较大值,如果长度不同,则可按照字典序比较,出现第一个较大高位者为较大值
string str[101];
class MyCompartor{
    public :
    bool operator () (string const & a,string const & b )const{
        if (a.length()!=b.length()){
            return a.length()<b.length();
        }else{
            return a<b;
        }

    }
};
int main(){
    int n;
    while( cin>> n && n){
        for (int i=0;i<n;i++){
            cin>>str[i];
        }
        sort(str,str+n,MyCompartor());
        for(int i=0;i<n;i++){
            cout<<str[i]<<endl;
        }


    }
    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务