Rezolvare completă PbInfo #413 Adiacenta1

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 100 de 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 

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema Adiacenta1:

#include <iostream>
#include <fstream>
#include <cassert>
using namespace std;

ifstream fin("adiacenta1.in");
ofstream fout("adiacenta1.out");

int n,a[105][105];

int main()
{
    int i , j;
    while(fin >> i >> j){
        a[i][j] = a[j][i] = 1;
        if(i > n)
            n = i;
        if(j > n)
            n = j;
    }
    
    for(int i = 1 ;  i <= n ; i++){
        for(int j = 1; j <= n ; ++j)
            fout << a[i][j] << " ";
        fout << "\n";
    }
    return 0;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #413 Adiacenta1

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #413 Adiacenta1 de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!