华为机试HJ80:整型数组合并

简介: 华为机试HJ80:整型数组合并

题目描述:

将两个整型数组按照升序合并,并且过滤掉重复数组元素。

输出时相邻两数之间没有空格。

请注意本题有多组样例。

输入描述:

输入说明,按下列顺序输入:

1 输入第一个数组的个数

2 输入第一个数组的数值

3 输入第二个数组的个数

4 输入第二个数组的数值

输出描述:

输出合并之后的数组

示例:

输入:

3

1 2 5

4

-1 0 3 2


输出:

-101235


解题思路:

本题是个排序去重题。善用容器可以很好解决,用set可以自动排序和去重,用map也可以实现去重,我用的map;输入两个数组的内容,用map记录下来,再直接输出map的key即可。

测试代码:

#include <iostream>
#include <map>
#include <vector>
using namespace std;
int main()
{
    int n1,n2,t;
    while(cin>>n1)
    {
        map<int,int> m;
        for(int i=0;i<n1;++i)
        {
            cin>>t;
            m[t]++;
        }
        cin>>n2;
        for(int i=0;i<n2;++i)
        {
            cin>>t;
            m[t]++;
        }
        for(auto it:m)
        {
            cout<<it.first;
        }
        cout<<endl;
    }
    return 0;
}
相关文章
|
21天前
《剑指Offer》JZ3 数组中重复的数字
《剑指Offer》JZ3 数组中重复的数字
15 2
|
8月前
|
算法 C++
剑指offer(C++)-JZ3:数组中重复的数字(算法-排序)
剑指offer(C++)-JZ3:数组中重复的数字(算法-排序)
|
21天前
|
人工智能
PTA-将数组中的数逆序存放
将数组中的数逆序存放
34 0
|
7月前
剑指offer JZ37数字在排序数组中出现的次数
剑指offer JZ37数字在排序数组中出现的次数
30 0
|
7月前
剑指offerJZ50 数组中重复的数字
剑指offerJZ50 数组中重复的数字
28 0
|
8月前
|
Serverless
华为机试HJ30:字符串合并处理
华为机试HJ30:字符串合并处理
|
8月前
|
容器
华为机试HJ93:数组分组
华为机试HJ93:数组分组
|
8月前
华为机试HJ9:提取不重复的整数
华为机试HJ9:提取不重复的整数
|
8月前
|
Serverless
华为机试HJ62:查找输入整数二进制中1的个数
华为机试HJ62:查找输入整数二进制中1的个数
|
8月前
华为机试HJ65:查找两个字符串a,b中的最长公共子串
华为机试HJ65:查找两个字符串a,b中的最长公共子串