由于校赛,OJ将于本周五(5.17)到周日停止服务

Problem 1777. -- 有序数组合并1

1777: 有序数组合并1

Time Limit: 1 Sec  Memory Limit: 128 MB   64bit IO Format: %lld
Submitted: 343  Accepted: 121
[Submit][Status][Web Board]

Description

两数组a和b已经升序有序,编写程序将数组a和数组b中的元素合并到数组c,是的数组c仍然升序有序。
数组a和b中都不存在相同的数据,新数组c也要求不能有重复值。

注意:main函数已经给定(如下所示)。

           请将程序补充完整。

           提交时只需要提交自己补充的代码部分,不需要提交给定的main函数的代码部分。

#include<stdio.h>
int main()
{
    int n,m,a[100],b[100],c[100],t;
    while(scanf("%d",&n)!=EOF)
    {
        read_data(a,n);   //读n个整数到数组a中
        scanf("%d",&m);
        read_data(b,m);   //读m个整数到数组b中
        t=merge(a,n,b,m,c); //数组a和b合并到数组c,返回c的元素个数
        print(c,t);   //输出数组c的所有元素
    }
    return 0;
}

Input

包含多组测试数据,每组测试数据占两行。
第一行,首先是一个正整数n,表示数组a中的元素个数,后面紧接有n个整数,都是数组a中的元素。(升序有序)
第一行,首先是一个正整数m,表示数组b中的元素个数,后面紧接有m个整数,都是数组b中的元素。(升序有序)
数据之间用空格隔开。n,m,n+m均小于100。

Output

每组测试数据输出占2行,第一行输出1个整数,表示数组c中的元素个数。
第二行为数组c中的所有元素,按顺序输出。数据之间用空格隔开。

Sample Input

3 2 5 8
2 5 11

Sample Output

4
2 5 8 11

[Submit][Status][Web Board]