[BOJ] 11399번 ATM - JAVA

최영환·2023년 7월 30일
0

BaekJoon

목록 보기
85/87

💡 문제

💬 입출력 예시

📌 풀이(소스코드)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {
    static int N;
    static int[] P;

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        N = Integer.parseInt(br.readLine());

        P = new int[N];
        StringTokenizer st = new StringTokenizer(br.readLine());
        for (int i = 0; i < N; i++) {
            P[i] = Integer.parseInt(st.nextToken());
        }
        Arrays.sort(P);

        for (int i = 0; i < N - 1; i++) {
            P[i + 1] += P[i];
        }

        int sum = 0;
        for (int i = 0; i < N; i++) {
            sum += P[i];
        }
        System.out.println(sum);
    }

}

📄 해설

접근

  • 그리디 알고리즘 기본문제.
  • 문제를 잘 읽어보면, 배열을 정렬 하는 것이 우선이라는 것을 알 수 있다.
  • 정렬된 배열의 누적합을 구하면 끝

과정

  • 접근에서 과정 설명이 완료되었음
profile
조금 느릴게요~

0개의 댓글