给定一列非负整数,求这些数连接起来能组成的最大的数。

题目介绍

给定一列非负整数,求这些数连接起来能组成的最大的数。

输入描述:

第一行n>0是一个正整数,表示一共有n个输入。以后每行是一个非负整数,共有n行。

输出描述:

n个输入的非负整数连接成的最大的数

输入例子1:

6
9
8
7
65
4
3

输出例子1:

9876543

输入例子2:

2
11
2

输出例子2:

211

题目分析

# include 
# include 
# include 
# include 

using namespace std;

bool compare(string &a, string &b)
{
    return (a+b) > (b+a);
}
int main(){
    int n;
    cin >> n;
    vector str(n,"");
    for (int i =0;i> str[i];
    }
    sort(str.begin(), str.end(), compare);
    string res;
    for (auto c : str)
    {
        res += c;
    }
    cout << res <

你可能感兴趣的:(算法之美)