# PBinfo #778 – mchenar – Rezolvare C++

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

## Enunț

Cerinţa
Se dă o matrice cu n linii şi m coloane şi elemente numere naturale. Să se determine mulțimea formată din elementele distincte ale chenarului matricei.

Date de intrare
Programul citește de la tastatură numerele n şi m, iar apoi n*m numere naturale, separate prin spaţii, reprezentând elementele matricei, linie cu linie.

Date de ieşire
Programul afișează pe ecran elementele mulțimii determinate, în ordine strict crescătoare, separate printr-un spațiu.

Restricţii şi precizări

1 ≤ m,n ≤ 100
elementele matricei vor fi mai mici decât 1.000.000
chenarul matricei este format din elementele situate pe prima linie, prima coloană, ultima linie, ultima coloană

Exemplu:
Date de intrare

4 7
15 27 40 41 32 42 12 
48 35 40 54 17 46 33 
37 52 40 19 11 46 23 
49 27 40 29 25 44 12 
Date de ieșire

12 15 23 25 27 29 32 33 37 40 41 42 44 48 49

## Cod sursă C++

```cpp
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
    int n, m, k = 0, mat[101][101], v[1001];
    cin >> n >> m;
    for (int i = 0; i < n; i++)
        for (int j = 0; j < m; j++)
            cin >> mat[i][j];
    for (int i = 0; i < n; i = i + n - 1)
        for (int j = 0; j < m; j++) {
            v[k] = mat[i][j];
            k++;
        }
    for (int i = 1; i < n - 1; i++)
        for (int j = 0; j < m; j = j + m - 1) {
            v[k] = mat[i][j];
            k++;
        }
    sort(v, v + k);
    for (int i = 0; i < k; i++) {
        if (v[i] != v[i - 1])
        cout << v[i] << " ";
    } return 0;
}
```

## Resurse

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