백준 2822번 점수 계산-JAVA

sujin·2025년 3월 23일

코딩테스트-백준

목록 보기
12/18

📝문제

📝알고리즘

//2차원 배열 생성해서
//0열에는 입력 순서, 1열에는 점수 저장
//점수를 기준으로 내림차순으로 배열을 정렬
//가장 높은 점수 5개인 배열 0~4행까지의 점수 더한 값인 sum 출력
//배열 numbers에 0~4행까지의 번호 저장 후 내림차순으로 정렬 후 출력

📝구현

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner scanner=new Scanner(System.in);
        int[][] score=new int[8][2];
        for(int i=0; i<8; i++){
            score[i][0]=i+1;
            score[i][1]=scanner.nextInt();
        }
        Arrays.sort(score, Comparator.comparingInt((int[] a)->a[1]).reversed());
        int sum=0;
        for(int i=0; i<5;i++){
            sum+=score[i][1];
        }
        System.out.println(sum);
        int[] numbers=new int[5];
        for(int i=0; i<5; i++){
            numbers[i]=score[i][0];
        }
        Arrays.sort(numbers);
        for(int i=0; i<5;i++){
            System.out.print(numbers[i]+" ");
        }
    }
}

📌기록하고 싶은 내용

<자바에서 정렬하는 방법>

➡️기본 정렬 알고리즘 직접 구현: 버블 정렬, 선택 정렬, 삽입 정렬, 병합 정렬, 퀵 정렬 등...
➡️자바에서 제공하는 정렬 함수 사용: Arrays.sort(), Collections.sort()

profile
열공!

0개의 댓글