fbpx

Problema #3120 – Simetrica_Bac – Rezolvari PBInfo

de Mihai-Alexandru

Cerința

Un tablou bidimensional cu număr impar de coloane este numit simetric faţă de coloana din mijloc dacă, pe fiecare linie a tabloului, elementele dispuse simetric faţă de elementul din mijloc al liniei respective au valori egale.

Scrieţi un program care citește de la tastatură două numere naturale, m și n (n impar), și elementele unui tablou bidimensional cu m linii și n coloane, numere naturale. Programul afișează pe ecran mesajul DA, dacă tabloul este simetric față de coloana din mijloc, sau mesajul NU în caz contrar.

Date de intrare

Programul citește de la tastatură numerele m și n , iar apoi cele n*m elemente ale matricei.

Date de ieșire

Programul va afișa pe ecran mesajul DA sau NU, conform eununțului.

Restricții și precizări

  • 3 ≤ n, m ≤ 21
  • numerele citite din matrice vor fi mai mici decât 10.000

Exemplu

Intrare

4 5
1 2 4 2 1
3 5 5 5 3
2 4 1 4 2
1 1 1 1 1

Ieșire

DA
#include <bits/stdc++.h>
using namespace std;

int main()
{

    int n , m , a[101][101];
    cin >> n >> m;
    for(int i = 1 ; i <= n ; i++)
        for(int j = 1 ; j <= m ; j++)
            cin >> a[i][j];
        
    int ok = 0 , mijl = m / 2 + 1;
    
    for(int i = 1 ; i <= n; i++)
        for(int j = 1 ; j <= m ; j++)
            if(a[i][mijl + j] != a[i][mijl - j]) ok = 1;

    if(ok == 0) cout << "DA";
    else cout << "NU";
    return 0;
}
Comentarii

S-ar putea sa iti placa