P1107 最大整数

2018-06-17 22:26:21来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

题目描述

设有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
4
7 13 4 246
输出样例#1:
34331213
7424613


stl大法好啊,,总感觉这题在哪儿做过
注意一下条件不要写a>b不然
3
9 90 9这组数据过不了!!
 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<cmath>
 5 #include<algorithm>
 6 using namespace std;
 7 const int MAXN=21;
 8 int read(int & n)
 9 {
10     char c='.';int x=0,flag=0;
11     while(c<'0'||c>'9')
12     {
13         c=getchar();
14         if(c=='-')flag=1;
15     }
16     while(c>='0'&&c<='9')
17     {
18         x=x*10+(c-48);
19         c=getchar();
20     }
21     if(flag==1)n=-x;
22     else n=x;
23 }
24 string s[21];
25 int comp(const string & a,const string & b)
26 {
27     return a+b>b+a;
28 }
29 int main()
30 {
31     int n;
32     while(cin>>n)
33     {
34         for(int i=1;i<=n;i++)
35             cin>>s[i];
36         sort(s+1,s+n+1,comp);
37         for(int i=1;i<=n;i++)
38         cout<<s[i];    
39     }
40     
41     return 0;
42 }

 


标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:P3373 【模板】线段树 2 区间求和 区间乘 区间加

下一篇:P2668 斗地主 贪心+深搜