11650๋ฒ: ์ขํ ์ ๋ ฌํ๊ธฐ
์ฒซ์งธ ์ค์ ์ ์ ๊ฐ์ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ i๋ฒ์ ์ ์์น xi์ yi๊ฐ ์ฃผ์ด์ง๋ค. (-100,000 ≤ xi, yi ≤ 100,000) ์ขํ๋ ํญ์ ์ ์์ด๊ณ , ์์น๊ฐ ๊ฐ์ ๋ ์ ์ ์๋ค.
www.acmicpc.net
๋ฌธ์
์์ค ์ฝ๋
ํ์ด
โ ํ ์คํธ ์ผ์ด์ค๋ฅผ ๋ฐ์ ๋ณ์ N์ ์์ฑํ๋ค.
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int N = Integer.parseInt(br.readLine());
โ ์ด์ฐจ์ ๋ฐฐ์ด arr์ ์์ฑํ๊ณ for๋ฌธ์ ํตํด ์ ๋ ฅ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด์ค๋ค.
int[][] arr = new int[N][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());
}
โ Arrays.sort๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ ฌ์ ํ๋๋ฐ Comparator์ ๋๋ค์์ผ๋ก ๊ตฌํํ์ฌ ์ ๋ ฌํ๋ค.
Arrays.sort(arr, (e1, e2) -> {
if (e1[0] == e2[0]) {
return e1[1] - e2[1];
} else {
return e1[0] - e2[0];
}
});
โ StringBuilder sb์ ์ถ๋ ฅ๊ท๊ฒฉ์ ๋ง๊ฒ append() ํ๋ค.
for (int i = 0; i < N; i++) {
sb.append(arr[i][0] + " " + arr[i][1]).append('\n');
}
โ StringBuilder sb๋ฅผ ์ถ๋ ฅํ๋ค.
System.out.println(sb);
'๐ Algorithm > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 1181๋ฒ : ๋จ์ด ์ ๋ ฌ (1) | 2022.12.17 |
---|---|
[๋ฐฑ์ค] 11651๋ฒ : ์ขํ ์ ๋ ฌํ๊ธฐ 2 (0) | 2022.12.17 |
[๋ฐฑ์ค] 1427๋ฒ : ์ํธ์ธ์ฌ์ด๋ (0) | 2022.12.15 |
[๋ฐฑ์ค] 2108๋ฒ : ํต๊ณํ (0) | 2022.12.15 |
[๋ฐฑ์ค] 10989๋ฒ : ์ ์ ๋ ฌํ๊ธฐ 3 (0) | 2022.12.15 |