題目描述
設有?n?個正整數?a1?…an?,將它們聯接成一排,相鄰數字首尾相接,組成一個最大的整數。
輸入格式
第一行有一個整數,表示數字個數?n。
第二行有?n?個整數,表示給出的?n?個整數?ai?。
輸出格式
一個正整數,表示最大的整數
輸入輸出樣例
輸入 #1復制
3 13 312 343
輸出 #1復制
34331213
輸入 #2復制
4 7 13 4 246
輸出 #2復制
7424613
說明/提示
對于全部的測試點,保證?1≤n≤20,1≤ai?≤109。
NOIP1998 提高組 第二題
#include<bits/stdc++.h>
using namespace std;
string a[21];
bool cmp(const string &a,string &b)
{return (a+b)>b+a;;
}
int main ()
{int n;cin>>n;for(int i=0;i<n;i++){cin>>a[i];}sort(a,a+n,cmp);for(int i=0;i<n;i++){cout<<a[i];}cout<<endl;return 0;
}
//by crtzk7