
์ค๋์ ๋ฐฑ์ค ์๋น๋ฉ๋ด ๋ฌธ์ ์๋๋ฐ ๋ฌธ์ ๊ฐ ์ดํดํ๊ธฐ ๋๋ฌด ์ด๋ ค์ ๋ค. ๊ทธ๋์ ๋ต์์ ์ฐธ๊ณ ํ๋๋ฐ ์ฝ๊ณ ๋๋ ์ด๋ ค์ด ๋ฌธ์ ๋ ์๋์๋๋ฐ ๋ฌธ์์ด ์ ๋ ฅ ์ฒ๋ฆฌ๋ฅผ ํด์ผ ํด์ ๋ ๋ณต์กํด์ง ๊ฒ ๊ฐ๋ค. ์ฝ๋๋ ๊ธธ์ด์ง๊ณ . ๋ฐ์ ์ฝ๋๋ GPT๋ฅผ ๋์์ ๋ฐ์ ์์ฑํ๋ค.
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(br.readLine()); // ์ ๋ณด์ ๊ฐ์
List<Integer> listA = new ArrayList<>(); // ์ํ๋ ๊ฑธ ๋จน์ ํ์
List<Integer> listB = new ArrayList<>(); // ์ํ์ง ์๋ ๊ฑธ ๋จน์ ํ์
List<Integer> listC = new ArrayList<>(); // ๋ชป ๋จน์ ํ์
Deque<int[]> queue = new LinkedList<>(); // ์๋น ๋๊ธฐ ์ค (FIFO)
for (int i = 0; i < n; i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
int type = Integer.parseInt(st.nextToken());
if (type == 1) { // ํ์ ๋์ฐฉ
int student = Integer.parseInt(st.nextToken());
int favoriteMenu = Integer.parseInt(st.nextToken());
queue.offer(new int[]{student, favoriteMenu});
} else { // ์์ ์ค๋น๋จ
int menuReady = Integer.parseInt(st.nextToken());
if (!queue.isEmpty()) {
int[] student = queue.poll(); // ๋๊ธฐ์ด์ ์ฒซ ๋ฒ์งธ ํ์
if (student[1] == menuReady) { // ์ํ๋ ๋ฉ๋ด๋ฅผ ๋จน์
listA.add(student[0]);
} else { // ์ํ์ง ์๋ ๋ฉ๋ด๋ฅผ ๋จน์
listB.add(student[0]);
}
}
}
}
// ์ค์ ๋จ์ ์๋ ํ์๋ค์ ๋จน์ง ๋ชปํ ํ์๋ค
while (!queue.isEmpty()) {
listC.add(queue.poll()[0]);
}
// ์ ๋ ฌ ํ ์ถ๋ ฅ
printList(sb, listA);
printList(sb, listB);
printList(sb, listC);
bw.write(sb.toString());
bw.flush();
bw.close();
br.close();
}
// ๋ฆฌ์คํธ ์ ๋ ฌ ๋ฐ ์ถ๋ ฅ ํจ์
private static void printList(StringBuilder sb, List<Integer> list) {
if (list.isEmpty()) {
sb.append("None\n");
} else {
Collections.sort(list);
for (int num : list) {
sb.append(num).append(" ");
}
sb.append("\n");
}
}
}
'์ฝ๋ฉํ ์คํธ > TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[99ํด๋ฝ] 16์ผ์ฐจ ๋ฌธ์ : ๋ ๋งต๊ฒ (0) | 2025.02.11 |
---|---|
[99ํด๋ฝ] 15์ผ์ฐจ ๋ฌธ์ : ๊ท ํ์กํ ์ธ์ (0) | 2025.02.08 |
[99ํด๋ฝ] 13์ผ์ฐจ ๋ฌธ์ : ํ (0) | 2025.02.06 |
[99ํด๋ฝ] 12์ผ์ฐจ ๋ฌธ์ : ๋ง๋๊ธฐ (1) | 2025.02.04 |
[99ํด๋ฝ] 11์ผ์ฐจ ๋ฌธ์ : ์คํ (0) | 2025.02.03 |
๋๊ธ