Răspuns :
#include <iostream>
#include <algorithm>
using namespace std;
int v[200001], a[100001];
int gasit(int d, int s, int key, int * v)
{
if(s < d) return 0;
int mij = (d + s) / 2;
if(key < v[mij]) return gasit(d, mij-1, key, v);
else if(key > v[mij]) return gasit(mij+1, s, key, v);
else return 1;
}
int main()
{
int n, i, num, m, ind=0;
cout << "n="; cin >> n;
cout << "introdu numere naturale, elementele primei multimi: \n";
for (i=1; i<=n; ++i)
{
cin >> v[i];
}
cout << "m="; cin >> m;
cout << "introdu numere naturale, elementele multimii a doua: \n";
for (i=1; i<=m; ++i)
{
cin >> num;
if (!gasit(1,n,num,v)) { ++n; v[n]=num; }
else { ++ind; a[ind]=num; }
}
sort(v+1, v+n+1);
cout << " multimea reuniune: \n";
for (i=1; i<=n; ++i)
cout << v[i] << " ";
cout << "\n";
cout << " multimea intersectie: \n";
for (i=1; i<=ind; ++i)
cout << a[i] << " ";
return 0;
}
Vă mulțumim că ați vizitat site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Dacă aveți întrebări sau nevoie de asistență suplimentară, nu ezitați să ne contactați. Pe curând și nu uitați să ne adăugați la favorite!