题解:P1012 [NOIP 1998 提高组] 拼数


题意简化

给定 n 个数,将它们打乱顺序拼接,求拼接出最大的数字

思路

将每个数字以字符串形式存进数组,分别将其和其它数字拼接起来比较大小,最后输出即可

代码

#include<bits/stdc++.h> using namespace std; int n; string str[21]; bool cmp(string a,string b) { return a+b>b+a; } int main() { cin>>n; for(int i=0;i<n;i++) { cin>>str[i]; } sort(str,str+n,cmp); for(int i=0;i<n;i++) { cout<<str[i]; } return 0; }

严禁抄袭题解

洛谷发布日期为2025-11-16 09:15

原文链接 返回主页