#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int n;
int m;
int i;
int k;
printf("Enter the size of array A: "); int arrA[n];
printf("Enter the element(s) of array A: "); for(i=0;i<n;i++)
{
}
for(i=0; i<n; i++)
{
}
printf("Enter the size of array B: "); int arrB[m];
printf("Enter the element(s) of array B: "); for(i=0;i<m;i++)
{
}
for(i=0; i<m; i++)
{
}
k = arr_union(arrA, arrB, n, m);
return 0;
}
int arr_union(int arrA[], int arrB[], int m, int n)
{
int i = 0;
int j = 0;
int k = 0;
int l = 0;
if(n > m)
{
n = l;
}
else
{
m = l;
}
int arrC[l];
while ((i < n) && (j < m))
{
if (arrA[i] < arrB[j])
{
arrC[k] = arrA[i];
i++;
k++;
}
else if (arrA[i] > arrB[j])
{
arrC[k] = arrB[j];
j++;
k++;
}
else
{
arrC[k] = arrA[i];
i++;
j++;
k++;
}
}
if (i == n)
{
while (j < m)
{
arrC[k] = arrB[j];
j++;
k++;
}
}
else
{
while (i < n)
{
arrC[k] = arrA[i];
i++;
k++;
}
}
return(k);
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgoKaW50IG1haW4oKQp7CiAgICBpbnQgbjsKICAgIGludCBtOwogICAgaW50IGk7CiAgICBpbnQgazsKICAgIHByaW50ZigiRW50ZXIgdGhlIHNpemUgb2YgYXJyYXkgQTogIik7CiAgICBzY2FuZigiJWQiLCZuKTsKICAgIGludCBhcnJBW25dOwogICAgcHJpbnRmKCJFbnRlciB0aGUgZWxlbWVudChzKSBvZiBhcnJheSBBOiAiKTsKICAgIGZvcihpPTA7aTxuO2krKykKICAgICAgICB7ICAgCiAgICAgICAgICAgIHNjYW5mKCIlZCIsJmFyckFbaV0pOwogICAgICAgIH0KICAgIGZvcihpPTA7IGk8bjsgaSsrKQogICAgICAgIHsKICAgICAgICAgICAgcHJpbnRmKCIlZCIsYXJyQVtpXSk7CiAgICAgICAgfQogICAgcHJpbnRmKCJcbiIpOwoKICAgIHByaW50ZigiRW50ZXIgdGhlIHNpemUgb2YgYXJyYXkgQjogIik7CiAgICBzY2FuZigiJWQiLCZtKTsKICAgIGludCBhcnJCW21dOwogICAgcHJpbnRmKCJFbnRlciB0aGUgZWxlbWVudChzKSBvZiBhcnJheSBCOiAiKTsKICAgIGZvcihpPTA7aTxtO2krKykKICAgICAgICB7CiAgICAgICAgICAgIHNjYW5mKCIlZCIsJmFyckJbaV0pOwogICAgICAgIH0KICAgIGZvcihpPTA7IGk8bTsgaSsrKQogICAgICAgIHsKICAgIHByaW50ZigiJWQiLGFyckJbaV0pOwogICAgICAgIH0KICAgIHByaW50ZigiXG4iKTsKCWsgPSBhcnJfdW5pb24oYXJyQSwgYXJyQiwgbiwgbSk7CiAgICBwcmludGYoIiVkXG4iLGspOwogICAgcmV0dXJuIDA7Cn0KCgppbnQgYXJyX3VuaW9uKGludCBhcnJBW10sIGludCBhcnJCW10sIGludCBtLCBpbnQgbikKewogICAgaW50IGkgPSAwOwogICAgaW50IGogPSAwOwogICAgaW50IGsgPSAwOwogICAgaW50IGwgPSAwOwogICAgaWYobiA+IG0pCiAgICAgICAgewogICAgICAgICAgICBuID0gbDsKICAgICAgICB9CiAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICBtID0gbDsKICAgICAgICB9CiAgICBpbnQgYXJyQ1tsXTsKICAgIHdoaWxlICgoaSA8IG4pICYmIChqIDwgbSkpCiAgICB7CiAgICAgICAgaWYgKGFyckFbaV0gPCBhcnJCW2pdKQogICAgICAgIHsKICAgICAgICAgICAgYXJyQ1trXSA9IGFyckFbaV07CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgICAgaysrOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmIChhcnJBW2ldID4gYXJyQltqXSkKICAgICAgICB7CiAgICAgICAgICAgIGFyckNba10gPSBhcnJCW2pdOwogICAgICAgICAgICBqKys7CiAgICAgICAgICAgIGsrKzsKICAgICAgICB9CiAgICAgICAgZWxzZQogICAgICAgIHsKICAgICAgICAgICAgYXJyQ1trXSA9IGFyckFbaV07CiAgICAgICAgICAgIGkrKzsKICAgICAgICAgICAgaisrOwogICAgICAgICAgICBrKys7CiAgICAgICAgfQogICAgfQogICAgaWYgKGkgPT0gbikKICAgIHsKICAgICAgICB3aGlsZSAoaiA8IG0pCiAgICAgICAgewogICAgICAgICAgICBhcnJDW2tdID0gYXJyQltqXTsKICAgICAgICAgICAgaisrOwogICAgICAgICAgICBrKys7CiAgICAgICAgfQogICAgfQogICAgZWxzZQogICAgewogICAgICAgIHdoaWxlIChpIDwgbikKICAgICAgICB7CiAgICAgICAgICAgIGFyckNba10gPSBhcnJBW2ldOwogICAgICAgICAgICBpKys7CiAgICAgICAgICAgIGsrKzsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4oayk7Cn0K