Skip to content

Commit 2121299

Browse files
authored
[20260126] BOJ / G5 / 배 / 이준희
[20260126] BOJ / G5 / 배 / 이준희
2 parents 9de7078 + b6933f0 commit 2121299

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

JHLEE325/202601/26 BOJ G5 배.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
```java
2+
import java.io.*;
3+
import java.util.*;
4+
5+
public class Main {
6+
public static void main(String[] args) throws Exception {
7+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
8+
StringTokenizer st;
9+
10+
int n = Integer.parseInt(br.readLine());
11+
12+
Integer[] cranes = new Integer[n];
13+
14+
st = new StringTokenizer(br.readLine());
15+
for (int i = 0; i < n; i++) {
16+
cranes[i] = Integer.parseInt(st.nextToken());
17+
}
18+
19+
int m = Integer.parseInt(br.readLine());
20+
List<Integer> boxes = new ArrayList<>();
21+
22+
st = new StringTokenizer(br.readLine());
23+
for (int i = 0; i < m; i++) boxes.add(Integer.parseInt(st.nextToken()));
24+
25+
Arrays.sort(cranes, Collections.reverseOrder());
26+
Collections.sort(boxes, Collections.reverseOrder());
27+
28+
if (boxes.get(0) > cranes[0]) {
29+
System.out.println("-1");
30+
return;
31+
}
32+
33+
int time = 0;
34+
while (!boxes.isEmpty()) {
35+
int boxIdx = 0;
36+
for (int i = 0; i < n; ) {
37+
if (boxIdx == boxes.size()) break;
38+
39+
if (cranes[i] >= boxes.get(boxIdx)) {
40+
boxes.remove(boxIdx);
41+
i++;
42+
} else {
43+
boxIdx++;
44+
}
45+
}
46+
time++;
47+
}
48+
49+
System.out.println(time);
50+
}
51+
}
52+
```

0 commit comments

Comments
 (0)