0
已解决
#include <iostream>
#include <algorithm>
using namespace std;
int n,m;
string a[105];
bool cmp(string a,string b){
if(a.size()!=b.size())
return a.size()<b.size();
return a<b;
}
bool cmp1(string a,string b){
return a+b<b+a;
}
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+1+n,cmp);
sort(a+1,a+1+m,cmp1);
for(int i=1;i<=m;i++){
cout<<a[i];
}
return 0;
}
0
已采纳
第6行的cmp函数不要,同时第19行sort也不要
完美AC!!!
曹灿阳在2020-08-25 21:01:35追加了内容
排序后不要忘了把前导0去掉 ~QAQ~
while(ans[0]=='0')
ans.erase(0,1);
if(ans.empty())
ans="0";
写题时逻辑要严谨!!!
曹灿阳在2020-08-25 21:01:57追加了内容
别举报
0
0
被禁言


修练者
- int n,m;
- string a[105];
- bool cmp(string a,string b){
- if(a.size()!=b.size())
- return a.size()<b.size();
- return a<b;
- }
- bool cmp1(string a,string b){
- return a+b<b+a;
- }
- int main(){
- cin>>n;
- for(int i=1;i<=n;i++){
- cin>>a[i];
- }
- sort(a+1,a+1+n,cmp);
- sort(a+1,a+1+n,cmp1);
- for(int i=1;i<=n;i++){
- cout<<a[i];
- }
- return 0;
- }
0
0