#include <stdio.h>
#include <stdlib.h>

void  f1(int v[], int na)
{
    int n=0;
    for(int i=1;i<=na;i++)
          n=n|(1<<v[i]);
    printf("%d", n);
}

void f2(int A[], int B[], int na, int nb)
{
    int k=1, C[61];
    for(int i=1;i<=na;i++)
    {
        for(int j=1;j<=nb;j++)
            if(A[i]==B[j])
            {
                C[k]=A[i];
                k++;
            }
    }
    f1(C, k-1);
}

void f3(int A[], int B[], int na, int nb)
{
    int k=1, C[61];
    for(int i=1;i<=na;i++)
    {
        int ok=0;
        for(int j=1;j<=nb;j++)
        {
            if(A[i]==B[j])
                ok++;

        }
        if(ok==0)
        {
            C[k]=A[i];
            k++;
        }

    }
    f1(C, k-1);
}

int main()
{
    int A[61], B[61],i,na,nb,k;
    scanf("%d", &na);
    for(i=1;i<=na;i++)
    {
        printf("A[i]= ", i);
        scanf("%d", &A[i]);
    }
    scanf("%d", &nb);
    for(i=1;i<=nb;i++)
    {
        printf("B[i]= ", i);
        scanf("%d", &B[i]);
    }
    printf("multimea A este transfrormata in numarul intreg: ");
    f1(A, na);
    printf("\n");
    printf("intersectia celor doua multimi scrisa ca numar intreg este: ");
    f2(A, B, na, nb);
    printf("\n");
    printf("diferenta celor doua multimi scrisa ca numar intreg este: ");
    f3(A, B, na, nb);
    return 0;
}