Post

🧩 Baekjoon 11650 - μ’Œν‘œ μ •λ ¬ν•˜κΈ°

🧩 Baekjoon 11650 - μ’Œν‘œ μ •λ ¬ν•˜κΈ°

문제

2차원 평면 μœ„μ˜ 점 Nκ°œκ°€ μ£Όμ–΄μ§„λ‹€. μ’Œν‘œλ₯Ό xμ’Œν‘œκ°€ μ¦κ°€ν•˜λŠ” 순으둜, xμ’Œν‘œκ°€ κ°™μœΌλ©΄ yμ’Œν‘œκ°€ μ¦κ°€ν•˜λŠ” μˆœμ„œλ‘œ μ •λ ¬ν•œ λ‹€μŒ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

μž…λ ₯

첫째 쀄에 점의 개수 N (1 ≀ N ≀ 100,000)이 μ£Όμ–΄μ§„λ‹€. λ‘˜μ§Έ 쀄뢀터 N개의 μ€„μ—λŠ” i번점의 μœ„μΉ˜ xi와 yiκ°€ μ£Όμ–΄μ§„λ‹€. (-100,000 ≀ xi, yi ≀ 100,000) μ’Œν‘œλŠ” 항상 μ •μˆ˜μ΄κ³ , μœ„μΉ˜κ°€ 같은 두 점은 μ—†λ‹€.

좜λ ₯

첫째 쀄뢀터 N개의 쀄에 점을 μ •λ ¬ν•œΒ κ²°κ³Όλ₯Ό 좜λ ₯ν•œλ‹€.

예제

βœ… μž…λ ₯ 1

1
2
3
4
5
6
5
3 4
1 1
1 -1
2 2
3 3

βœ… 좜λ ₯ 1

1
2
3
4
5
1 -1
1 1
2 2
3 3
3 4

μž‘μ„± μ½”λ“œ

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
import java.io.BufferedReader;  
import java.io.IOException;  
import java.io.InputStreamReader;  
import java.util.Arrays;  
import java.util.StringTokenizer;  
  
public class Main {  
    public static void main(String[] args) throws IOException {  
        // 1. λ³€μˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™”  
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  
        StringBuilder sb = new StringBuilder();  
        int n = Integer.parseInt(br.readLine());  
        int[][] arr = new int[n][2];  
        
        // 2. λ°°μ—΄ μ΄ˆκΈ°ν™”  
        for (int i = 0; i < n; i++) {  
            StringTokenizer st = new StringTokenizer(br.readLine());  
            
            arr[i][0] = Integer.parseInt(st.nextToken());  
            arr[i][1] = Integer.parseInt(st.nextToken());  
        }  
        
        // 3. μ •λ ¬ 처리  
        Arrays.sort(arr, (x, y) ->  
            x[0] != y[0] ? Integer.compare(x[0], y[0]) : Integer.compare(x[1], y[1]));  
            
        // 4. 좜λ ₯  
        for (int i = 0; i < n; i++) sb.append(arr[i][0]).append(" ").append(arr[i][1]).append("\n");  
        System.out.println(sb);  
    }  
}
This post is licensed under CC BY 4.0 by the author.