#include <iostream>
using namespace std;
//任务:将两个有序顺序表合并
#define Initsize 50
typedef struct {
int* data;
int length, maxsize;
}SqList;
//初始化
void Init(SqList& L)
{
int i;
L.data = new int[Initsize];
for (i = 0; i < 6; i++)
{
cin >> L.data[i];
}
L.length = i;
}
//比较两个顺序表,找到小的放入c中
bool Merge(SqList& A, SqList& B, SqList& C)
{
int i = 0, j = 0, k = 0;
if (A.length + B.length >= C.maxsize)
return false;
while (i<A.length&&j<B.length)
{
if (A.data[i] <= B.data[j])
C.data[k++] = A.data[i++];
else
C.data[k++] = B.data[j++];
}
while (i<A.length)
C.data[k++] = A.data[i++];
while (j < B.length)
C.data[k++] = B.data[j++];
C.length = k;
return true;
}
int main()
{
SqList A,B,C;
Init(A); Init(B);
C.data = new int[Initsize];
C.maxsize = Initsize;
Merge(A, B, C);
for (int i = 0; i <C.length; i++)
cout << C.data[i] << " ";
return 0;
}