提交时间:2023-12-31 14:09:15

运行 ID: 227809

#include <bits/stdc++.h> using namespace std; struct node { string s; int b; int l; }a[22]; bool cmp(node x,node y) { return x.b>y.b; } int main() { int n; cin>>n; int bestsize = 0; for(int i= 1;i <= n;i++) { cin>>a[i].s; a[i].l = a[i].s.size(); if(a[i].l>bestsize) { bestsize = a[i].l; } } for(int i = 1;i <= n;i++) { if(a[i].l<bestsize) { a[i].s.insert(a[i].s.size(),"0"); } } for(int i = 1;i <= n;i++) { a[i].b = stoi(a[i].s); } sort(a+1,a+n+1,cmp); for(int i = 1;i <= n;i++) { for(int j = 0;j < a[i].l;j++) { cout<<a[i].s[j]; } } return 0; }