# PBinfo #186 – cifmin – Rezolvare C++

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

## Enunț

Cerinţa
Se citește de la tastatură un număr natural n, apoi n numere naturale. Să se afişeze cel mai mic număr care poate fi scris folosind cifra minimă a fiecărui număr citit.

Date de intrare
Programul citește de la tastatură numărul n, iar apoi cele n numere naturale, separate prin spaţii.

Date de ieşire
Programul afișează pe ecran numărul MIN, cel mai mic număr care poate fi scris folosind cifra minimă a fiecărui număr citit.

Restricţii şi precizări

0 < n < 1000
cele n numere citite vor fi mai mici decât 1.000.000.000

Exemplu:
Intrare

5
100 312 276 985 5021
Ieșire

10025

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
int v[10];
int cifmin(int n) {
    int var = 10;
    while (n != 0) {
        if (n % 10 < var)
            var = n % 10;
        n = n / 10;
    } return var;
} int main() {
    int n; cin >> n;
    for (int i = 0; i < n; i++) {
        int temp;
        cin >> temp;
        v[cifmin(temp)]++;
    } int temp = 1;
    while (v[temp]==0) temp++;
    cout << temp;
    v[temp]--;
    for (int i = 0; i < 10; i++)
        for (int j = 1; j <= v[i]; j++) cout << i;
        return 0;
}
```

## Resurse

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