AT_joi2020_yo1a_c.マージ (Merge)
普及-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个长度为 N 的正整数序列 A=(A1, A2, …, AN) 和一个长度为 M 的正整数序列 B=(B1, B2, …, BM)。这两个序列都是广义单调递增序列。也就是说,满足 A1≤A2≤⋯≤AN,B1≤B2≤⋯≤BM。
使用如下算法,从这两个序列生成一个长度为 N+M 的正整数序列 C=(C1, C2, …, CN+M)。
- 初始时 C 为空。
- 如果 A 和 B 都为空,则算法结束。
- 如果 A 或 B 其中之一为空,则令 t 为非空的那个序列。如果都不为空,则取首元素较小的序列为 t。如果 A 和 B 的首元素相等,则取 A 作为 t。
- 将 t 的首元素添加到 C 的末尾。
- 从 t 中删除首元素。
- 返回步骤 2。
给定广义单调递增的正整数序列 A 和 B,请编写程序输出按照上述算法生成的正整数序列 C。
输入格式
输入通过标准输入给出,格式如下:
N M A1 A2 ⋯ AN B1 B2 ⋯ BM
输出格式
请输出 N+M 行。
第 k 行(1≤k≤N+M)输出 Ck。
输入输出样例
输入#1
2 1 1 2 2
输出#1
1 2 2
输入#2
3 8 1 3 8 3 3 4 5 6 7 8 9
输出#2
1 3 3 3 4 5 6 7 8 8 9
说明/提示
限制条件
- 1≤N≤500。
- 1≤M≤500。
- 1≤A1≤A2≤⋯≤AN≤2000。
- 1≤B1≤B2≤⋯≤BM≤2000。
样例解释 1
在执行算法前,A=(1,2), B=(2)。数列 C 的生成过程如下:
- 数列 A 的首元素为 1,数列 B 的首元素为 2,因此将 A 的首元素添加到 C 并从 A 中删除。
- 数列 A 的首元素为 2,数列 B 的首元素为 2,因此将 A 的首元素添加到 C 并从 A 中删除。
- 数列 A 已空,因此将 B 的首元素添加到 C 并从 B 中删除。
- 数列 A 和 B 都为空,算法结束。
算法结束后,数列 C=(1,2,2)。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?