题目描述:
将两个整型数组按照升序合并,并且过滤掉重复数组元素。
输出时相邻两数之间没有空格。
请注意本题有多组样例。
输入描述:
输入说明,按下列顺序输入:
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; }