ID:12103最大数

标题: 最大数
详情: 设有 n 个正整数(n≤20) ,将它们联接成一排,组成一个最大的多位整数。
例如:n=3 时,3 个整数 13,312,343 联接成的最大整数为:34331213
又如:n=4 时,4 个整数 7,13,4,246 联接成的最大整数为:7424613

输入格式:
第一行只有一个 n
第二行为 n 个整数
输出格式:
联接成的多位数
提示: n<=20
每个整数不超过20位
样例:

输入

3
13 312 343

输出

34331213


#include<iostream>  
#include<algorithm>  
#include<string>  
using namespace std;
string s[21];
bool cmp(string a, string b)
{
    return a + b > b + a;
}
int main()
{
    int n, i;
    scanf("%d", &n);
    for (i = 0; i < n; i++)
        cin >> s[i];
    sort(s ,s + n, cmp);
    for (i = 0; i < n; i++)
        cout << s[i];
    cout << endl;
    return 0;
}






猜你喜欢

转载自blog.csdn.net/dovis233/article/details/79788911