NOIP1998--拼数(伤心的字符串)



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

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

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

输入输出格式

输入格式:

第一行,一个正整数n。

第二行,n个正整数。

输出格式:

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

样例:

输入:

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

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

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

输入输出格式

输入格式:

第一行,一个正整数n。

第二行,n个正整数。

输出格式:

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

输入输出样例

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



简单比较字符串,但是但是但但是,千万别比数字!要连起来比!220和22,数字是220大,但是连起来是22220大 a+b和b+a比,一边冒泡下来就完事了。



#include
#include
#include
using namespace std;
string num[22];
int n;


void swap(int x,int y)
{
      string a;
      a=num[x];
      num[x]=num[y];
      num[y]=a;
}


int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
     cin>>num[i];
    for(int i=1;i<=n;i++)
    for(int j=1;j
坑死了,第一次交比的是数字,才80分,泪奔
哭哭大哭大哭
哭哭大哭大哭
 
     
 
     

设有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

你可能感兴趣的:(NOIP1998--拼数(伤心的字符串))