![article thumbnail image](https://blog.kakaocdn.net/dn/TF26N/btqLJVTcWJD/dLFm0MDQLj5IKq8gfq42xK/img.png)
반응형
코드
#include <iostream>
#include <vector>
#include <queue>
using namespace std;
int ch[21], dis[21];
int main(void)
{
int n, m, i, a, b, x;
vector<int> map[21];
queue<int> Q;
cin >> n >> m;
for (i = 1; i <= m; ++i)
{
cin >> a >> b;
map[a].push_back(b);
map[b].push_back(a);
}
Q.push(1);
ch[1] = 1;
while (!Q.empty())
{
x = Q.front();
Q.pop();
for (i = 0; i < map[x].size(); ++i)
{
if (ch[map[x][i]] == 0)
{
ch[map[x][i]] = 1;
Q.push(map[x][i]);
dis[map[x][i]] = dis[x] + 1;
}
}
}
for (i = 2; i <= n; ++i)
{
cout << i << " : " << dis[i] << endl;
}
return 0;
}
출력 결과
해당 포스트는 'it 취업을 위한 알고리즘 문제풀이 (with C/C++) : 코딩테스트 대비' 강의를 수강하며 개인 백업용으로 메모하였습니다.
인프런: https://www.inflearn.com/course/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98#
it 취업을 위한 알고리즘 문제풀이 (with C/C++) : 코딩테스트 대비 - 인프런
알고리즘과 자료구조를 이용해 문제해결력을 기르는게 주 목적입니다. 초급 취업 ・ 이직 프로그래밍 언어 알고리즘 C++ 알고리즘 코딩 테스트 개발자취업 온라인 강의 알고리즘
www.inflearn.com
반응형