목록분리 집합 (2)
어흥
문제 링크: https://www.acmicpc.net/problem/20040 20040번: 사이클 게임 사이클 게임은 두 명의 플레이어가 차례대로 돌아가며 진행하는 게임으로, 선 플레이어가 홀수 번째 차례를, 후 플레이어가 짝수 번째 차례를 진행한다. 게임 시작 시 0 부터 n − 1 까지 고유한 www.acmicpc.net 1. 주의할 점 - 분리집합 알고리즘에 대해 알고 있어야 한다 2. 구현 - findPar() 함수를 통해 해당 Node의 부모를 반환하는 함수를 구현한다 - makeUnion() 함수를 통해 a와 b의 최상위 부모를 연결한다 - M개의 선분을 입력받으면서 해당 선분의 부모가 같지 않으면 makeUnion()을 통해 같게 해준다. 만약 같고 finish 값이 0이 아니라면 fin..
문제 링크: https://www.acmicpc.net/problem/3780 3780번: 네트워크 연결 문제 종빈이는 아주 큰 그룹의 총수다. 이 그룹은 1부터 N번까지의 번호로 구분할 수 있는 N개의 기업을 운영하고 있다. 현재 각 기업은 서로 독립적인 자체 컴퓨팅 및 통신센터를 가지고 있다. �� www.acmicpc.net 1. 주의할 점 - TLE가 안나도록 잘 짜야 한다 - 새로운 간선을 연결할때만 1000으로 나눈 나머지 거리로 입력한다 2. 구현 - Find_parent(x) 함수를 통해 X의 센터에서부터 X까지의 거리를 구하여 갱신한다. 기존에 1->2->4였고 4->6이 새로 추가 됐다고 가정한다. 그리고 E 1을 입력한 경우, Dist[1], Dist[2]가 새로 갱신된다. Dist[..