【题解-洛谷】P1012 [NOIP 1998 提高组] 拼数

题目:P1012 NOIP 1998 提高组 拼数

题目描述

设有 n n n 个正整数 a 1 ... a n a_1 \dots a_n a1...an,请将它们连接成一排,相邻数字首尾相接,组成一个最大的整数。

输入格式

第一行有一个整数,表示数字个数 n n n。

第二行有 n n n 个整数,表示给出的 n n n 个整数 a i a_i ai。

输出格式

一个正整数,表示最大的整数。

输入输出样例 #1

输入 #1

复制代码
3
13 312 343

输出 #1

复制代码
34331213

输入输出样例 #2

输入 #2

复制代码
4
7 13 4 246

输出 #2

复制代码
7424613

说明/提示

对于全部的测试点,保证 1 ≤ n ≤ 20 1 \leq n \leq 20 1≤n≤20, 1 ≤ a i ≤ 10 9 1 \leq a_i \leq 10^9 1≤ai≤109。

NOIP1998 提高组 第二题

思路

核心在于排序函数的编写,比较两个字符串拼接后的大小。

代码

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
const int N=20+10;
int n;
string a[N];
bool cmp(string x,string y){
	return x+y>y+x;
}
int main(){
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i];
	} 
	sort(a,a+n,cmp);
	for(int i=0;i<n;i++) cout<<a[i];
	return 0;
}

结果


相关推荐
INGNIGHT3 小时前
270 · 电话号码的字母组合II(Trie)
linux·算法
2401_839080543 小时前
C++常见八股
数据结构·c++·算法
青山是哪个青山3 小时前
LeetCode 188:买卖股票的最佳时机 IV
算法
mikuyyds4 小时前
geo-toolbox 插件算法解析:RUSLE 与 MUSLE 的工程化落地
算法·rust·gis
a187927218314 小时前
【算法】树(二):队列与祖先——BFS 骨架三配件、短路透传与合流
算法·leetcode·二叉树··bfs·算法讲解·树遍历
syagain_zsx4 小时前
算法基础篇 · 03 枚举(C++ 题解)
c++·算法·二进制·枚举
weixin_307779134 小时前
C++代码实现MATLAB中的ode23tb函数功能
开发语言·c++·算法·matlab
我是章汕呐5 小时前
地级市能源消耗量及消耗强度数据【2006-2023年】平衡面板
人工智能·经验分享·算法·回归
charliejohn5 小时前
计算机考研 408 数据结构 堆的插入与删除 堆排序
算法
老鱼说AI6 小时前
从点积到希尔伯特空间:向量内积的几何本质与大模型相似度度量
人工智能·深度学习·线性代数·算法·机器学习·数学建模