413
Cerinţa
Se dă lista muchiilor unui graf neorientat. Să se afișeze matricea de adiacență a grafului.
Date de intrare
Fiecare dintre liniile fișierului adiacenta1.in conține câte o pereche de numere i j, cu semnificația că există muchie între i și j.
Date de ieşire
Fişierul de ieşire adiacenta1.out va conţine n linii; pe fiecare dintre ele vor fi câte n valori separate prin exact un spațiu, reprezentând matricea de adiacență a grafului dat.
Restricţii şi precizări
- graful dat va avea cel mult
100de vârfuri - muchiile se pot repeta în fișierul de intrare
- numărul de vârfuri ale grafului va fi egal cu cea mai mare valoare din lista muchiilor
Exemplu
adiacenta1.in
1 4 1 3 3 5 4 5 2 4 1 2 4 2 3 4
adiacenta1.out
0 1 1 1 0 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 1 1 0
#include <bits/stdc++.h>
using namespace std;
ifstream cin("adiacenta1.in");
ofstream cout("adiacenta1.out");
int n , m , a[101][101] , p , r;
int main()
{
while(cin >> p >> r)
{
a[p][r] = 1;
a[r][p] = 1;
n = max(n, max(p, r));
}
for(int i = 1 ; i <= n ; ++i)
{
for(int j = 1 ; j <= n ; ++j)
cout << a[i][j] << " ";
cout << endl;
}
return 0;
}
Comentarii