B. 懒惰的猪

传统 1000 ms 256 MiB
标准 IO
文本比较

题目描述

由于猪非常的懒惰,他偷了一道以前做过的题目。

给定一个长度为 nn 的整数序列,满足它是从小到大排好序的。

再给定一个长度为 mm 的整数序列,它也是从小到大排好序的。

现在把它们拼起来,得到新的长度为 n+mn+m 的整数序列。

请你发挥自己的聪明才智,快速地使用指针把新的整数序列从小到大排序。

输入格式

第一行一个整数 nn1n10000001\le n\le 1000000)。

第二行 nn 个整数,绝对值都小于 10910^9

第三行一个整数 mm1m10000001\le m\le 1000000)。

第四行 mm 个整数,绝对值都小于 10910^9

输出格式

一行 n+mn+m 个整数,表示把新的整数序列从小到大排序后的结果。

样例

输入

2
1 3
3
-1 2 3

输出

-1 1 2 3 3

数据范围与提示

可以通过下面的方法读入一个长度为 nn 的数组和一个长度为 mm 的数组,其中 n,mn,m 是一个输入的数,而且 1n,m1061\le n,m\le 10^6

const int N=1e6;
int n,m,a[N],b[N];
int main()
{
    scanf("%d",&n);
    int *A=a;
    for(int i=0;i<n;i++,A++)
        scanf("%d",A);
    /*
    等价的写法:
    for(int i=0;i<n;i++)
        scanf("%d",&a[i]);
    */
    scanf("%d",&m);
    A=b;
    for(int i=0;i<m;i++,A++)
        scanf("%d",A);
}