Park DJ
dj0998
Park DJ
전체 방문자
오늘
어제
  • 분류 전체보기 (363)
    • 백준 (363)

공지사항

인기 글

태그

  • 백준 12605
  • 백준 15312
  • 백준 1495
  • 백준 15961
  • 백준 3049
  • 백준 2591
  • 백준 3135
  • Java
  • 백준 1747
  • 백준 14582
  • 백준
  • 백준 4659
  • 백준 12871
  • 백준 7662
  • 백준 1011
  • 백준 8892
  • 백준 7567
  • 백준 15655
  • 백준 16926
  • 백준 24039
  • 백준 2225
  • 백준 16194
  • 백준 2343
  • 자바
  • 백준 1531
  • 백준 1914
  • 백준 10709
  • 백준 6550
  • 백준 1064
  • 백준 2467
hELLO · Designed By 정상우.
Park DJ

dj0998

백준 2535 아시아 정보올림피아드(Java)
백준

백준 2535 아시아 정보올림피아드(Java)

2023. 2. 22. 12:31

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

 

2535번: 아시아 정보올림피아드

첫 번째 줄에는 대회참가 학생 수를 나타내는 N이 주어진다. 단, 3 ≤ N ≤ 100이다. 두 번째 줄부터 N개의 줄에는 각 줄마다 한 학생의 소속 국가 번호, 학생 번호, 그리고 성적이 하나의 빈칸을 사

www.acmicpc.net


 

해석 및 팁

 


 

이 문제는 먼저 이중배열에 값을 입력받은 후 comparator을 사용해서 점수를 기준으로 정렬해 줍니다. 만약 금메달과 은메달을 같은 국가가 수상했을 경우 동메달은 다른 국가가 수상해야 하므로 그다음으로 등장하는 국가를 찾아서 출력해 주면 되고 금메달과 은메달이 다른 나라인 경우에는 순서대로 출력해 주면 됩니다.

 


 

Java 코드

 


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

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    StringBuilder sb = new StringBuilder();

    int index = 0;
    int n = sc.nextInt();
    int[][] arr = new int[n][3];

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

    Arrays.sort(arr, new Comparator<int[]>(){
      public int compare(int[] o1, int[] o2) {
        return o2[2] - o1[2];
      }
    });

    sb.append(arr[0][0]+" "+arr[0][1]).append("\n");
    sb.append(arr[1][0]+" "+arr[1][1]).append("\n");
    
    if(arr[0][0] == arr[1][0]) {
      for(int i = 2; i < n; i++) {
        if(arr[1][0] != arr[i][0]) {
          index = i;
          break;
        }
      }
      sb.append(arr[index][0]+" "+arr[index][1]).append("\n");
    }
    else sb.append(arr[2][0]+" "+arr[2][1]).append("\n");

    System.out.print(sb);
  }
}

'백준' 카테고리의 다른 글

백준 2302 극장 좌석(Java)  (0) 2023.02.22
백준 1064 평행사변형(Java)  (0) 2023.02.22
백준 3049 다각형의 대각선(Java)  (0) 2023.02.21
백준 1747 소수&펠린드롬(Java)  (0) 2023.02.21
백준 10164 격자상의 경로(Java)  (0) 2023.02.21
    '백준' 카테고리의 다른 글
    • 백준 2302 극장 좌석(Java)
    • 백준 1064 평행사변형(Java)
    • 백준 3049 다각형의 대각선(Java)
    • 백준 1747 소수&펠린드롬(Java)
    Park DJ
    Park DJ

    티스토리툴바