fbpx

Problema #778 – MChenar – Rezolvari PBInfo

de Mihai-Alexandru

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
#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n , m , a[101][101] , v[500] , p = 0;
    cin >> n >> m;
    for(int i = 0 ; i < n ; ++i)
        for(int j = 0 ; j < m ; ++j)
        cin >> a[i][j];
    for(int i = 0 ; i < n ; i+=n-1)
        for(int j = 0 ; j < m ; ++j)
        {
            v[p]=a[i][j];
            p++;
        }

    for(int i = 1 ; i < n-1 ; i++)
        for(int j = 0 ; j < m ; j+=m-1)
        {
            v[p]=a[i][j];
            p++;
        }

    sort(v, v+p);
    for(int i = 0 ; i < p ; ++i)
    {
        if(v[i]!=v[i-1])
        cout << v[i] << ' ';
    }
}
Comentarii

S-ar putea sa iti placa