티스토리 뷰
14868번: 문명
표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 세계의 크기를 나타내는 정수 N(2 ≤ N ≤ 2,000)과 문명 발상지의 수 K(1 ≤ K ≤ 100,000)가 주어진다. 다음 K줄에는 한 줄에 하나씩 문명 발상지
www.acmicpc.net
백조의 호수랑 비슷한 문제. 옛날에 백조의 호수 풀 땐 유니온 파인드를 몰라서 서로 이어졌는지 확인하는 과정을 까다롭게 구현했었는데, 유니온 파인드를 알고 나니 체감 난이도가 확 떨어짐. 서로 다른 문명을 합치는 과정과 문명이 없는 곳에 문명을 전파하는 과정을 따로 구현하면 된다.
먼저 문명을 합치는 큐를 돌리고 그 과정에 사용된 큐를 다시 전파용 큐로 전달해주고 문명 전파 후 새로 추가된 큐를 문명을 합치기 용 큐로 보내는 과정을 반복하면 된다. 문명을 합치는 연산이 모든 문명의 수 - 1번 행해지면 모든 문명이 합쳐진 걸 확인할 수 있다. 라이 블로그는 트리 사이즈랑 방문한 사이즈를 비교해서 판단한다는데, 그건 어떻게 구현한 건지 잘 모르겠다.
- Source code link
github.com/Bibidi/Algorithms/blob/master/boj/boj%2014868.cpp
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- boj 1280
- 터보소트
- Ugly Numbers
- 백준 1106
- 백준 12713
- boj 2243
- 제로베이스 백엔드 스쿨
- 백준 14868
- boj 14868
- 인간 대포
- boj 12713
- boj 3006
- boj 10775
- 백준 9345
- 백준 10473
- 제로베이스 스쿨
- boj 2336
- 부트 캠프
- 백준 2243
- boj 9345
- boj 1106
- 백준 2336
- 백준 3006
- boj 10473
- 디지털 비디오 디스크
- 백준 16562
- 사탕상자
- 백준 1280
- 백준 10775
- boj 16562
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함