Cod sursa(job #3278499)

Utilizator RaaaareeesLeah Rares Raaaareees Data 19 februarie 2025 22:37:00
Problema BFS - Parcurgere in latime Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.82 kb
#include <iostream>
using namespace std;

int matrice[10][10] = { 0 };
int nvizitate[10] = { 0 };
int coada[10] = { 0 };

void citire(int m)
{
	int i = 0;
	int j = 0;

	for (int x = 0; x < m; x++)
	{
		cin >> i >> j;
		matrice[i][j] = 1;
		matrice[j][i] = 1;
	}
}

void bfs(int k, int n)
{
	int l = 0;
	int index = 0;
	nvizitate[k] = 1;
	coada[l] = k;
	l++;
	
	while (index < l)
	{
		int ncurent = coada[index];
		for (int x = 1; x <= n; x++)
		{
			if (matrice[ncurent][x] == 1)
			{
				if (nvizitate[x] == 0)
				{
					coada[l] = x;
					l++;
					nvizitate[x] = 1;
				}
			}
		}
		index++;
	}

	for (int x = 0; x < l; x++)
	{
		cout << coada[x] << " ";
	}
}

int main()
{
	int n = 0;
	int m = 0;
	int nod = 0;

	cin >> n >> m >> nod;

	citire(m);

	bfs(nod,n);


}