[BOJ] 11724 연결 요소의 개수 (BFS)

GirlFriend-Yerin·2020년 8월 26일
0

알고리즘

목록 보기
20/131

Note

백준 11724 연결 요소의 개수 BFS 버전
알고리즘은 DFS와 동일

소스 코드

#include <iostream>
#include <queue>

using namespace std;

bool adjMatrix[1000][1000];
bool check[1000];

int main()
{
	int n, m, count = 0;
	int startNum = -1;

	cin >> n >> m;

	for (int i = 0; i < m; i++)
	{
		int x, y;
		cin >> x >> y;

		adjMatrix[x - 1][y - 1] = adjMatrix[y - 1][x - 1] = true;
	}

	for (int i = 0 ;i < n ; i++)
	{	
		if (check[i])
			continue;

		queue<int> q;
		q.push(i);

		while (!q.empty())
		{
			int cur = q.front();
			q.pop();

			if (check[cur])
				continue;

			check[cur] = true;

			for (int j = 0; j < n; j++)
			{
				if (adjMatrix[cur][j])
					q.push(j);
			}
		}

		count++;
	}

	cout << count;

	return 0;
}

2019-01-01 17:14:29에 Tistory에서 작성되었습니다.

profile
개발할때 가장 행복한 개발자입니다.

0개의 댓글