题目链接:3608. 大整数排序
#include <iostream>
#include <vector>
#include <map>
#include <set>
#include <algorithm>
#include <iterator>
#include <string>
#include <cstdlib>
#include <stack>
#define ll long long
using namespace std;
ll n;
struct big_num
{
string num;
ll length;
};
bool cmp(big_num& a, big_num& b)
{
if (a.length == b.length)return a.num < b.num;
return a.length < b.length;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin >> n;
vector<big_num>vec(n);
for (size_t i = 0; i < n; i++)
{
cin >> vec[i].num;
vec[i].length = vec[i].num.length();
}
sort(vec.begin(), vec.end(), cmp);
for (auto& it : vec)
{
cout << it.num << endl;
}
return 0;
}