# PBinfo #997 – reuniune – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Cerința
Se dau două mulțimi de numere naturale. Să se afișeze reuniunea lor.

Date de intrare
Fişierul de intrare reuniune.in conţine pe prima linie numerele n m, reprezentând numărul de elemente din fiecare mulţime.

Linia a doua conţine n numere naturale diferite, ordonate crescător, reprezentând elementele primei mulțimi.

Linia a treia conţine m numere naturale diferite, ordonate crescător, reprezentând elementele celei de-a doua mulțimi.

Date de ieșire
Fişierul de ieşire reuniune.out va conţine pe prima linie elementele reuniunii celor două mulțimi, în ordine crescătoare, separate prin exact un spațiu.

Restricții și precizări

1 ≤ n , m ≤ 1000
elementele celor două mulțimi vor fi mai mici decât 1 000 000 000

Exemplu:
reuniune.in

6 4
1 3 4 7 10 43
3 5 10 37
reuniune.out

1 3 4 5 7 10 37 43

## Cod sursă C++

```cpp
#include <fstream>
using namespace std;
ifstream in("reuniune.in");
ofstream out("reuniune.out");
int a[1005], b[1005], c[2005], n, m, p;
int main() {
    in >> n >> m;
    for (int i = 1; i <= n;  ++i)
        in >> a[i];
    for (int i = 1; i <= m;  ++i)
        in >> b[i];
    p = 0;
    for (int i = 1; i <= n; i ++)
        c[++p] = a[i];
    for (int i = 1 ; i <= m ; ++i) {
        bool adv = true;
        for (int j = 1; j <= n && adv; j ++)
            if (b[i] == a[j])
                adv = false;
        if (adv) {
            p++; int j;
            for (j = p; j > 1 && c[j - 1] > b[i]; j--)
                c[j] = c[j - 1];
            c[j] = b[i];
        }
    } for (int i = 1; i <= p; i++)
        out << c[i] << " ";     
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/997)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/997/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-997/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
