A1038

用一串数拼接成一个数,输出最小的。

思路:使用string和相关的函数。

 1 #include
 2 #include
 3 #include<string>
 4 #include
 5 using namespace std;
 6 const int maxn=10010;
 7 string str[maxn];
 8 bool cmp(string a,string b){
 9     return a+ba;
10 }
11 int main(){
12     int n;
13     cin>>n;
14     for(int i=0;i){
15         cin>>str[i];
16     }
17     sort(str,str+n,cmp);
18     string ans;
19     for(int i=0;i){
20         ans+=str[i];
21     }
22     while(ans.size()!=0&&ans[0]=='0'){
23         ans.erase(ans.begin());
24     }
25     if(ans.size()==0) cout<<0;
26     else cout<<ans;
27     return 0;
28 }

 

你可能感兴趣的:(A1038)