fbpx

Problema #729 – Zona – Rezolvari PBInfo

de Mihai-Alexandru

Cerința

Se dă o matrice pătratică cu n linii și n coloane și elemente numere naturale mai mici decât 1000. Să se afișeze în ordine strict crescătoare valorile situate sub diagonala principală și deasupra diagonalei secundare. Dacă o valoare apare în zona respectivă de mai multe ori, se va afișa o singură dată.

Date de intrare

Programul citește de la tastatură numărul n, apoi elementele matricei, linie cu linie.

Date de ieșire

Programul va afișa pe ecran, în ordine strict crescătoare, valorile cerute, separate prin spații.

Restricții și precizări

  • 1 ≤ n ≤ 200

Exemplu

Intrare

6
10 8 5 8 4 2 
6 5 3 1 3 8 
8 1 4 7 8 8 
5 1 9 6 6 1 
8 9 10 1 3 6 
8 2 3 3 9 6 

Ieșire

1 5 6 8
#include <bits/stdc++.h>

using namespace std;
int main()
{
    long long n , a[201][201], c = 0 , v[205];
    cin >> n;
    for(int i = 0 ; i < n ; i++)
        for(int j = 0 ; j < n ; j++)
        cin >> a[i][j];
    for(int i = 0 ; i < n ; i++)
        for(int j = 0 ; j < n ; j++)
        {
            if(i > j && i + j < n - 1)
            {
                v[c] = a[i][j];
                c++;
            }
        }
    sort(v , v+c);
    for(int i = 0 ; i < c ; ++i)
    {
        if(v[i]!=v[i-1])
        cout << v[i] <<" ";
    }
    return 0;

}
Comentarii

S-ar putea sa iti placa