문제

문제출처 : Baekjoon

img

풀이

import java.util.*;

public class Main {

    public int solution(int[] arr){
        int answer = 0;
        int sum = 0;

        Arrays.sort(arr);

        for(int i = 0; i <arr.length; i++){
            sum += arr[i];
            answer += sum;
        }
        return answer;
    }

    public static void main(String[] args) {
        Main function = new Main();

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        int[] arr = new int[N];

        for(int i = 0; i < arr.length; i++){
            arr[i] = sc.nextInt();
        }

        System.out.println(function.solution(arr));

    }
}

회고

  1. 문제가 길면 왜인지 읽기 싫고 이해가 좀 어렵다. 잘못 이해하고 풀다가 뭔가 이상해서 다시 읽어서 풀었다.
  2. 최소값을 구하라 <- 그리디 알고리즘 문제! 대부분 그리디 알고리즘 문제를 풀면 정렬을 해야하는건가..? 이건 더 풀어봐야 알것같다.