티스토리 뷰
제목부터 슬픈 문제. 서로 연결되어 있는 것들을 처리해야 해서 처음엔 Connected Component를 구해서 어찌어찌 처리해야 하나 했지만 친구비를 아끼기 위해 친구 집합의 최소 친구비를 구해야 된다. 트리를 이용하면 루트에 최소 친구비를 업데이트 할 수 있고 두 트리를 합칠 땐 유니온 파인드를 이용하면 된다.
유니온 파인드의 merge를 구현할 때 왼쪽을 우리와 이미 친구인 집합 오른쪽을 새로 친구가 되는 집합이라 하고 한쪽으로만 붙여 나가며 루트를 업데이트 하면 구현이 간단하다.
- Source code link
github.com/Bibidi/Algorithms/blob/master/boj/boj%2016562.cpp
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 터보소트
- boj 1106
- 사탕상자
- boj 10473
- boj 16562
- 백준 2336
- 인간 대포
- 백준 2243
- 백준 10775
- boj 2336
- 백준 9345
- boj 9345
- boj 12713
- 제로베이스 스쿨
- 백준 14868
- 제로베이스 백엔드 스쿨
- 백준 16562
- boj 10775
- boj 3006
- boj 14868
- boj 2243
- 백준 1106
- 디지털 비디오 디스크
- 백준 12713
- boj 1280
- 부트 캠프
- Ugly Numbers
- 백준 10473
- 백준 3006
- 백준 1280
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
글 보관함