设有n个正整数 (n<=20), 将它们连接成一排, 组成一个最大的多位整数.
例如: n=3时, 3个整数13, 312, 343连接成的最大整数为: 34331213
又如: n=4时, 4个整数7,13,4,246连接成的最大整数为: 7424613
#include<iostream> #include<string> #include<cstring> #include<algorithm> using namespace std; string a[1000]; bool comp(string a,string b) { return (a + b > b + a); //直接给出sort排序后a在b前所要满足的条件 } int main() { int n, d = 1; cin >> n; for (int i = 0; i < n; i++) cin >> a[i]; sort(a, n + a, comp); for (int i = 0; i < n; i++) cout << a[i]; cout << endl; }
STL中sort可自写的cmp函数的定义,所谓cmp或者叫什么其他名字的函数,事实上是一个校验器。是在计算机排序完毕之后,校验序列是否符合编程者所需要的顺序。
时间: 2024-11-03 21:25:47