공부하기/백준

[Java] 백준 풀기 14487 - 욱제는 효도쟁이야

XEV 2023. 9. 1. 23:21

자바 백준 14487번

브론즈 2

https://www.acmicpc.net/problem/14487

 

14487번: 욱제는 효도쟁이야!!

욱제는 KOI를 망친 기념으로 부모님과 함께 코드게이트 섬으로 여행을 떠났다. 코드게이트 섬에는 오징어로 유명한 준오마을(심술쟁이 해커 임준오 아님), 밥으로 유명한 재훈마을, 영중마을 등

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 구현, 그리디 알고리즘

 

 

 

 

 

문제 풀기

서로 제일 이동 비용이 큰 두 마을을 시작과 끝으로 잡으면 그 두 마을을 연결하는 길은 가지 않아도 되며 최소한의 이동경비를 기대할 수 있다.

따라서 제일 이동 비용이 큰 경우를 제외한 나머지 이동 경로 비용만 합하면 되기 때문에 오름차순 정렬을 하여 마지막 index만 빼고 모두 누적합한다.

 

 

 

 

 

코드 보기

import java.util.Scanner;
import java.util.Arrays;

public class Main {
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] numbers = new int[n];
        
        for (int i = 0; i < n; i++) {
            numbers[i] = sc.nextInt();
        }
        
        Arrays.sort(numbers);
        
        long sum = 0;
        
        for (int i = 0; i < n - 1; i++) {
            sum += numbers[i];
        }
        
        System.out.println(sum);
    }
    
}