洛谷 P1012 拼数 题解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了洛谷 P1012 拼数 题解相关的知识,希望对你有一定的参考价值。

此文为博主原创题解,转载时请通知博主,并把原文链接放在正文醒目位置。

题目链接:https://www.luogu.org/problem/show?pid=1012

题目描述

设有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数。

例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213

又如:n=4时,4个整数7,13,4,246联接成的最大整数为:7424613

输入输出格式

输入格式:

第一行,一个正整数n。

第二行,n个正整数。

输出格式:

一个正整数,表示最大的整数

输入输出样例

输入样例#1:
3
13 312 343
输出样例#1:
34331213


分析:
string真的太好用了qwqqqq
自带运算符什么的超级棒qwqqq
排个序就好了

AC代码:
 1 #include<cstdio>
 2 #include<algorithm>
 3 #include<iostream>
 4 #include<string>
 5 
 6 int n;
 7 std::string s[30];
 8 
 9 int cmp(std::string a,std::string b)
10 {return a+b > b+a;}
11 
12 int main()
13 {
14     scanf("%d",&n);
15     for(int i = 1;i <= n;++ i)
16         std::cin>>s[i];
17     std::sort(s+1,s+1+n,cmp);
18     for(int i = 1;i <= n;++ i)
19         std::cout<<s[i];
20     printf("\n");
21     return 0;
22 }

 

以上是关于洛谷 P1012 拼数 题解的主要内容,如果未能解决你的问题,请参考以下文章

洛谷 P1012 拼数

洛谷——P1012 拼数

洛谷P1012 拼数

洛谷 P1012 拼数 [字符串]

洛谷P1012 [NOIP1998 提高组] 拼数

洛谷P1012 [NOIP1998 提高组] 拼数