PS/BaekJoon

10814 JAVA λ‚˜μ΄μˆœ μ •λ ¬

chaerlo127 2024. 2. 15. 23:14
728x90

Sliver 5. λ‚˜μ΄ 순 μ •λ ¬

πŸ€ 문제

온라인 저지에 κ°€μž…ν•œ μ‚¬λžŒλ“€μ˜ λ‚˜μ΄μ™€ 이름이 κ°€μž…ν•œ μˆœμ„œλŒ€λ‘œ 주어진닀. μ΄λ•Œ, νšŒμ›λ“€μ„ λ‚˜μ΄κ°€ μ¦κ°€ν•˜λŠ” 순으둜, λ‚˜μ΄κ°€ κ°™μœΌλ©΄ λ¨Όμ € κ°€μž…ν•œ μ‚¬λžŒμ΄ μ•žμ— μ˜€λŠ” μˆœμ„œλ‘œ μ •λ ¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

πŸ€ μž…λ ₯

첫째 쀄에 온라인 저지 νšŒμ›μ˜ 수 N이 주어진닀. (1 ≤ N ≤ 100,000)

λ‘˜μ§Έ 쀄뢀터 N개의 μ€„μ—λŠ” 각 νšŒμ›μ˜ λ‚˜μ΄μ™€ 이름이 곡백으둜 κ΅¬λΆ„λ˜μ–΄ 주어진닀. λ‚˜μ΄λŠ” 1보닀 ν¬κ±°λ‚˜ κ°™μœΌλ©°, 200보닀 μž‘κ±°λ‚˜ 같은 μ •μˆ˜μ΄κ³ , 이름은 μ•ŒνŒŒλ²³ λŒ€μ†Œλ¬Έμžλ‘œ 이루어져 있고, 길이가 100보닀 μž‘κ±°λ‚˜ 같은 λ¬Έμžμ—΄μ΄λ‹€. μž…λ ₯은 κ°€μž…ν•œ μˆœμ„œλ‘œ 주어진닀.

πŸ€ 좜λ ₯

첫째 쀄뢀터 총 N개의 쀄에 걸쳐 온라인 저지 νšŒμ›μ„ λ‚˜μ΄ 순, λ‚˜μ΄κ°€ κ°™μœΌλ©΄ κ°€μž…ν•œ 순으둜 ν•œ 쀄에 ν•œ λͺ…μ”© λ‚˜μ΄μ™€ 이름을 곡백으둜 ꡬ뢄해 좜λ ₯ν•œλ‹€.

πŸ€ 예제

πŸ€ 예제 μž…λ ₯ 1

3
21 Junkyu
21 Dohyun
20 Sunyoung

πŸ€ 예제 좜λ ₯ 1

20 Sunyoung
21 Junkyu
21 Dohyun

πŸ€ μ½”λ“œ

  • μ²˜μŒμ—λŠ” μžλ™μœΌλ‘œ μ •λ ¬ν•΄μ£ΌλŠ” νŠΈλ¦¬λ§΅μ„ μ‚¬μš©ν•˜λ €κ³  ν–ˆμ§€λ§Œ λ‚˜μ΄κ°€ 같은 경우 keyλ₯Ό μ€‘λ³΅λ˜μ–΄ μ‚¬μš©ν•  수 μ—†κΈ° λ•Œλ¬Έμ— μžλ°”μ— λ‚΄μž₯λ˜μ–΄ μžˆλŠ” sort ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•΄μ„œ 문제λ₯Ό ν•΄κ²°ν–ˆλ‹€.
import java.io.*;
import java.util.*;

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[][] persons = new String[n][2];
        for (int i = 0; i < n ; i++){
            StringTokenizer st = new StringTokenizer(br.readLine());
            persons[i][0] = st.nextToken();
            persons[i][1] = st.nextToken();
        }

        Arrays.sort(persons, (o1, o2) -> Integer.parseInt(o1[0]) - Integer.parseInt(o2[0]));

        for(int i = 0; i < persons.length; i++){
            System.out.println(persons[i][0] + " " + persons[i][1]);
        }
    }
}
728x90