티스토리 뷰

728x90

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

 

2822번: 점수 계산

8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문

www.acmicpc.net

 

굉장히 번거로운 방법으로 풀었단 느낌이 강하게 들지만 정답으로 처리가 된 구현입니다.

2차원 배열을 선언하여 입력값과 주소값을 저장합니다.

내림차순으로 정렬한 뒤, 주소값을 저장할 새로운 리스트를 선언하여 저장 후,

주소값 리스트를 오름차순으로 정렬한 구현 방법입니다.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import java.util.*;
 
public class Main {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
 
        int score[][] = new int[8][2];
 
        for (int i = 0; i < 8; i++) {
            score[i][0= sc.nextInt();
            score[i][1= i + 1;
        }
 
        Arrays.sort(score, new Comparator<int[]>() {
 
            @Override
            public int compare(int[] o1, int[] o2) {
                return Integer.compare(o2[0], o1[0]);
            }
 
        });
 
        StringBuilder sb = new StringBuilder();
 
        ArrayList<Integer> index = new ArrayList<>();
 
        int sum = 0;
        for (int i = 0; i < 5; i++) {
            sum += score[i][0];
            index.add(score[i][1]);
        }
        
        Collections.sort(index);
 
        for(int i:index) {
            sb.append(i+" ");
        }
        
        System.out.println(sum);
        System.out.println(sb);
 
        sc.close();
    }
}
cs

 

'코딩 > 자바 백준' 카테고리의 다른 글

백준 1620 나는야 포켓몬 마스터 이다솜(JAVA)  (0) 2021.08.22
백준 6603 로또 (JAVA)  (0) 2021.08.22
백준 5635 생일 (JAVA)  (0) 2021.08.21
백준 17413 단어 뒤집기2 (JAVA)  (0) 2021.08.20
백준 5525 IOIOI (JAVA)  (0) 2021.08.20
댓글