UVa 10905 孩子们的游戏

https://vjudge.net/problem/UVA-10905

题意:

给定n个正整数,把它们连接成一个最大的整数。

思路:

实在是没想到直接用string来排序了。

 1 #include<iostream> 
 2 #include<algorithm>
 3 #include<string>
 4 using namespace std;
 5 
 6 const int maxn = 50 + 5;
 7 
 8 int n;
 9 string s[maxn];
10 
11 bool cmp(string a, string b)
12 {
13     return a + b > b + a;
14 }
15 
16 int main()
17 {
18     ios::sync_with_stdio(false);
19     //freopen("D:\txt.txt", "r", stdin);
20     while (cin >> n && n)
21     {
22         for (int i = 0; i < n; i++)
23         {
24             cin >> s[i];
25         }
26         sort(s, s + n, cmp);
27         for (int i = 0; i < n; i++)
28             cout << s[i];
29         cout << endl;
30     }
31 }
原文地址:https://www.cnblogs.com/zyb993963526/p/6517199.html