简单题目,排序应用。
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
string arr[60];
int cmp(const void *a, const void *b)
{
string *pa = (string*)a;
string *pb = (string*)b;
if(*pa+*pb > *pb+*pa)
return 1;
else if(*pa+*pb == *pb+*pa)
return 0;
else
return -1;
}
int main(void)
{
int n, i;
//freopen("input.dat", "r", stdin);
while(cin>>n, n)
{
for(i=0; i<n; i++)
cin >> arr[i];
qsort(arr, n, sizeof(string), cmp);
for(i=n-1; i>=0; i--)
cout << arr[i];
cout << endl;
}
return 0;
}