이세개발

01 당장 좋은 것만 선택하는 그리디

02 아이디어를 코드로 바꾸는 구현

03 꼭 필요한 자료구조 탐색 알고리즘 DFS/BFS

04 기준에 따라 데이터를 정렬

05 범위를 반씩 좁혀가는 탐색

06 다이나믹 프로그래밍

07 가장 빠른 길 찾기

08 다양한 그래프 알고리즘

[문제]

때는 2040년, 이민혁은 우주에 자신만의 왕국을 만들었다. 왕국은 N개의 행성으로 이루어져 있다. 민혁이는 이 행성을 효율적으로 지배하기 위해서 행성을 연결하는 터널을 만들려고 한다.

행성은 3차원 좌표위의 한 점으로 생각하면 된다. 두 행성 A(xA, yA, zA)와 B(xB, yB, zB)를 터널로 연결할 때 드는 비용은 min(|xA-xB|, |yA-yB|, |zA-zB|)이다.

민혁이는 터널을 총 N-1개 건설해서 모든 행성이 서로 연결되게 하려고 한다. 이때, 모든 행성을 터널로 연결하는데 필요한 최소 비용을 구하는 프로그램을 작성하시오.

[입력조건]

  • 첫째 줄에 행성의 개수 N이 주어진다. (1 ≤ N ≤ 100,000)
  • 다음 N개 줄에는 각 행성의 x, y, z좌표가 주어진다.
  • 모든 좌표는 -10^9보다 크거나 같고, 10^9보다 작거나 같은 정수이다.
  • 한 위치에 행성이 두 개 이상 있는 경우는 없다.

[출력조건]

  • 첫째 줄에 모든 행성을 터널로 연결하는데 필요한 최소 비용을 출력한다.

입력예시

5
11 -15 -15
14 -5 -15
-1 -1 -5
10 -4 -1
19 -4 19

출력예시

4

'Algorithm > 이.코.테문제' 카테고리의 다른 글

08_12 [기출문제] 최종 순위  (0) 2023.06.13
08_10 [기출문제] 어두운 길  (0) 2023.06.13
08_09 [기출문제] 탑승구  (0) 2023.06.13
08_08 [기출문제] 여행 계획  (0) 2023.06.13
08_07 [실전문제] 커리큘럼  (0) 2023.06.13
profile

이세개발

@print(name)

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!