본문 바로가기

[BOJ] - JAVA

[백준] 10814 : 나이순 정렬 JAVA 풀이

1. 회원 수 N을 입력받는다.

2. 공백 하나를 두고 나이와 이름이 입력되는데, 이를 2차원 스트링 배열에 저장한다.

3. 나이순으로 정렬한다.

     -> 나이가 같을 때의 조건을 추가로 정해두지 않으면 알아서 입력된 순서로 정렬된다.

4. 정렬된 2차원 배열을 출력한다.

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

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());
        String[][] str = new String[N][2];
        
        for(int i=0;i<N;i++){
            StringTokenizer st = new StringTokenizer(br.readLine()," ");
            str[i][0] = st.nextToken();
            str[i][1] = st.nextToken();
        }

        Arrays.sort(str, (o1, o2)->{
            return Integer.parseInt(o1[0]) - Integer.parseInt(o2[0]);
        });
        
        for(int i=0;i<N;i++){
            System.out.println(str[i][0]+" "+str[i][1]);
        }
    }    
}