# PBinfo #621 – NumarLipsa – Rezolvare C++

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

## Enunț

Cerința
Se dă un sir cu n numere naturale. Determinați cel mai mic număr natural nenul care nu apare printre numerele date.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale.

Date de ieșire
Programul va afișa pe ecran numărul determinat X.

Restricții și precizări

1 ≤ n ≤ 100
cele n numere citite vor fi mai mici decât 1.000.000.000

Exemplu:
Intrare

5
4 2 7 6 1
Ieșire

3

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int n , v[1005];
int main()
{
    cin >> n;
    for(int i = 1 ; i <= n ; i ++)
        cin >> v[i];
    for(int i = 1 ; i < n ; i ++)
        for(int j = i + 1 ; j <= n ; j ++)
            if(v[i] > v[j])
            {
                int aux = v[i];
                v[i] = v[j];
                v[j] = aux;
            }
    int x = 0;
    if(v[1] != 1)
        x = 1;
    for(int i = 1 ; i < n && x == 0 ; ++i)
        if(v[i+1] > v[i] + 1)
            x = v[i] + 1;
    if (x == 0)
            x = v[n] + 1;
    cout << x;
    return 0;
}
```

## Resurse

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