uva10905

题目:  输入一串数字,求用这些数字能组成最大的整数

分析:  可以用sort()函数比较排序,比较方式为  int cmp(string a,string b){return a+b>b+a;}即可

#include <iostream>

#include <algorithm>

#include <string>

using namespace std;

string s[52];

int cmp(string a,string b)

{

   return a+b>b+a;

}

int main()

{

   freopen("sum.in","r",stdin);

   freopen("sum.out","w",stdout);

   int n;

   while(cin>>n,n)

   {

      for(int i=0;i<n;i++)

         cin>>s[i];

      sort(s,s+n,cmp);

      for(int i=0;i<n;i++)

         cout<<s[i];

      cout<<endl;

   }

 

   return 0;

}

 

你可能感兴趣的:(uva)