Informatică, întrebare adresată de pmarian98, 8 ani în urmă

#751 MCautare

Cerința
Se dă o matrice cu n linii și m coloane și elemente numere naturale și k valori naturale. Determinați pentru fiecare dintre cele k valori dacă apare pe fiecare linie a matricei.

Date de intrare
Programul citește de la tastatură numerele n m, apoi cele n linii ale matricei, fiecare cu câte m valori. Apoi citește valoarea k, apoi k valori x.

Date de ieșire
Programul va afișa pe ecran, pentru fiecare dintre cele k valori x, mesajul DA, dacă x apare pe fiecare dintre liniile matricei, respectiv NU în caz contrar. Fiecare mesaj va fi afișat pe câte o linie a ecranului.

Restricții și precizări
1 ≤ n,m ≤ 100
1 ≤ k ≤ 1000
elementele matricei și cele k valori x sunt mai mici decât 1.000.000.000



Exemplu
Intrare

4 5
3 7 9 9 7
3 7 8 10 9
8 9 5 10 7
3 5 4 7 9
6
9 4 7 8 10 7
Ieșire

DA
NU
DA
NU
NU
DA
Explicație
Dintre cele 6 valori citite, doar prima, a treia și a șasea apar pe toate liniile matricei.

Răspunsuri la întrebare

Răspuns de boiustef
5

#include <iostream>

using namespace std;

int a[101][101];

int main()

{

   int n, m, i, j, k, p, num, este;

   cin >> n >> m;

    for (i=1; i<=n; ++i)

       for (j=1; j<=m; ++j)

           cin >> a[i][j];

   cin >> k;

   for (p=1; p<=k; ++p)

   {

       cin >> num; este=1;

       for (i=1; i<=n && este; ++i)

       {

           este =0;

           for (j=1; j<=m; ++j)

               if (a[i][j]==num) este=1;

       }

       if (este) cout <<"DA";

       else cout << "NU";

       cout << "\n";

   }

   return 0;

}

Alte întrebări interesante