Cerinţa
Se dau mai multe grafuri neorientate, prin matricea de adiacență. Să se verifice despre fiecare graf dacă este complet.
Date de intrare
Fişierul de intrare graf_complet.in
conţine pe prima linie numărul de grafuri G
. Pentru fiecare dintre cele G
grafuri se dă n
și apoi matricea de adiacență, formată din n
linii și n
coloane.
Date de ieşire
Fişierul de ieşire graf_complet.out
va conţine G
linii. Pe fiecare dintre ele se va afla mesajul DA
sau NU
, după cum graful corespunzător este sau nu complet.
Restricţii şi precizări
1 ≤ G ≤ 5
1 ≤ n ≤ 50
Exemplu
graf_complet.in
2 3 0 1 1 1 0 1 1 1 0 4 0 1 1 1 1 0 0 1 1 0 0 1 1 1 1 0
graf_complet.out
DA NU
Explicație
S-au dat două grafuri. Primul are 3
vârfuri și este complet, al doilea are 4
vârfuri și nu este complet.
#include <bits/stdc++.h> using namespace std; ifstream cin("graf_complet.in"); ofstream cout("graf_complet.out"); int a[102][102]; int main() { int n , m; cin >> n; for(int i = 0 ; i < n ; ++i) { int cnt = 0; cin >> m; for(int i = 0 ; i < m ; ++i) for(int j = 0 ; j < m ; ++j) cin >> a[i][j]; for(int i = 0 ; i < m ; ++i) for(int j = 0 ; j < m; ++j) if(a[i][j]==0)cnt++; if(cnt <= m) cout << "DA" << endl; else cout << "NU" << endl; for(int i = 0 ; i < m ; ++i) for(int j = 0 ; j < m; ++j) a[i][j]=0; } }