问题标题: 酷町堂:1417   最小的数

0
0
已解决
武建豪
武建豪
中级天翼
中级天翼

1417   最小的数

经验值:1600 时间限制:1000毫秒

题目描述 Description

输入n个整数,将n个整数首尾相接组合成一个新的数,输出组合后的最小的数。

输入描述 Input Description

输入为两行;
第一行输入n,其中0<n<100,表示输入n个整数;
第二行输入n个整数,各数之间用空格隔开。

输出描述 Output Description

输出为一行,输出组合后的最小的数。

样例输入 Sample Input

2 12 121

样例输出 Sample Output

12112

急急急

武建豪在2021-07-25 12:42:16追加了内容

d


0
已采纳
王文博
王文博
缔造者之神
缔造者之神

我觉得张展嘉讲的不是最优解,sort只需要1个

bool cmp不用,留下bool cmp1

输入输出代码:

cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>s[i];
    }
    sort(s+1,s+n+1,cmp1);
    for(int i=1;i<=n;i++) cout<<s[i];

这个很简单吧!也是一道超水的题目

0
0
张展嘉
张展嘉
新手天翼
新手天翼

bool cmp(string a,string b){

if(a.size()!=b.size())

return a.size()<b.size();

return a<b;

}

bool cmp1(string a,string b){

return a+b<b+a;

}

sort函数,剩下的就是输入输出了

我要回答