Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
2149 | 大聪明 | 最大整数 | C++ | 通过 | 100 | 0 MS | 260 KB | 759 | 2019-11-09 17:26:37 |
#include<iostream> #include<string> using namespace std; bool compare(string a,string b) { if(a+b>=b+a)//ab>=ba,这个时候不需要交换 { return false; } return true;//ab<ba,这个时候需要交换 } int main() { int n; cin>>n; string arr[20],temp; for(int a=0;a<n;a++) { cin>>arr[a]; } for(int i=0;i<n-1;i++) { for(int j=n-1;j>i;j--) { if(compare(arr[j-1],arr[j])) //如果为true则交换, { temp=arr[j]; arr[j]=arr[j-1]; arr[j-1]=temp; } } } for(int k=0;k<n;k++){ cout<<arr[k]; } cout<<endl; return 0; }