์ฝ๋
import java.util.ArrayList;
import java.util.List;
import java.util.PriorityQueue;
import java.util.Queue;
class Solution {
public int[][] reconstructQueue(int[][] people) {
// ์ฐ์ ์์ ํ ์ ์ธ ๋ฐ ์ ๋ ฌ. ์ ๋ ฌ ๊ธฐ์ค์ ํฐ ํค ์ฐ์ , ๊ฐ์ด ๊ฐ๋ค๋ฉด ์์ ์ค ์ ์๋ ์ฌ๋์ด ์์ ์์ผ๋ก
Queue<int[]> pq = new PriorityQueue<>((a, b) -> a[0] != b[0] ? b[0] - a[0] : a[1] - b[1]);
// ์ฐ์ ์์ ํ์ ์
๋ ฅ๊ฐ ์ฝ์
for (int[] person : people) {
pq.add(person);
}
List<int[]> result = new ArrayList<>();
// ์ฐ์ ์์ ํ์์ ๋ชจ๋ ์ถ์ถํ ๋๊น์ง ๋ฐ๋ณต
while (!pq.isEmpty()) {
// ํฐ ํค ์ฐ์ , ์์ ์ค ์ ์๋ ์ฌ๋์ด ์ ์ ์์ผ๋ก ์ถ์ถ
int[] person = pq.poll();
// ์์ ์ค ์ ์๋ ์ฌ๋์ ์ธ๋ฑ์ค๋ก ์ ํด์ ์ฝ์
result.add(person[1], person);
}
return result.toArray(new int[people.length][2]);
}
}
Java
๋ณต์ฌ
๋ฌธ์ ํด๊ฒฐ ์์ด๋์ด
์ฐ์ ์์ ํ๋ฅผ ํ์ฉํด์ ์ ๋ ฌํ๊ณ , ํจํด์ ํ์
ํด์ ๊ฐ์ ๋ฐฐ์นํ๋ฉด ๋๋ค.