Skip to content

Commit 45e6e67

Browse files
authored
[20250715] BOJ / G4 / 이중 우선순위 큐 / 설진영
1 parent 5b447d7 commit 45e6e67

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
```java
2+
import java.io.*;
3+
import java.util.*;
4+
5+
public class Main {
6+
public static void main(String[] args) throws IOException {
7+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
8+
StringBuilder sb = new StringBuilder();
9+
10+
int T = Integer.parseInt(br.readLine());
11+
12+
while (T-- > 0) {
13+
TreeMap<Integer, Integer> map = new TreeMap<>();
14+
int k = Integer.parseInt(br.readLine());
15+
16+
for (int i = 0; i < k; i++) {
17+
StringTokenizer st = new StringTokenizer(br.readLine());
18+
String op = st.nextToken();
19+
int n = Integer.parseInt(st.nextToken());
20+
21+
if (op.equals("I")) {
22+
map.put(n, map.getOrDefault(n, 0) + 1);
23+
continue;
24+
}
25+
26+
if (map.isEmpty()) continue;
27+
28+
int key = (n == 1) ? map.lastKey() : map.firstKey();
29+
if (map.get(key) == 1) {
30+
map.remove(key);
31+
} else {
32+
map.put(key, map.get(key) - 1);
33+
}
34+
}
35+
36+
if (map.isEmpty()) {
37+
sb.append("EMPTY\n");
38+
} else {
39+
sb.append(map.lastKey()).append(" ").append(map.firstKey()).append("\n");
40+
}
41+
}
42+
43+
System.out.print(sb);
44+
}
45+
}
46+
```

0 commit comments

Comments
 (0)