378
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 ≤ 1001 ≤ k ≤ 1000- elementele matricei și cele
kvalorixsunt mai mici decât1.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.
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
cin >> n >> m;
int r=-1;
int a[100][100] , v[1000];
for(int i = 0 ; i < n ; ++i)
for(int j = 0 ; j < m ; ++j)
cin >> a[i][j];
int p;
cin >> p;
for(int i = 0 ; i < p ; ++i)
cin >> v[i];
for(int i = 0 ; i < p ; ++i)
{
int cnt=0;
for(int j = 0 ; j < n ; ++j)
{
for(int k=0 ; k < m ; ++k)
{
if(a[j][k]==v[i] && r!=j)
{
r = j;
cnt++;
}
}
}
if(cnt==n) cout << "DA" << endl;
else cout << "NU" << endl;
}
return 0;
}
Comentarii