🦊 피자 굽기
1. 문제 링크
2. 코드
Python3
77796kb
336ms
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
D, N = map(int, input().split())
OVEN_DEPTH = list(map(int, input().split()))
PIZZA_COMPLETE_ORDER = list(map(int, input().split()))
# 중간 칸이 아무리 넓어도 위에 칸보다 덜 들어감
for i in range(D - 1):
OVEN_DEPTH[i + 1] = min(OVEN_DEPTH[i + 1], OVEN_DEPTH[i])
count = 0
for i in range(D - 1, -1, -1):
if PIZZA_COMPLETE_ORDER[count] > OVEN_DEPTH[i]:
continue
count += 1
if count >= N:
print(i + 1)
exit(0)
print(0)
3. 해설
해설
오븐의 중간칸이 아무리 넓어도 중간에 비집고 들어갈 수 없기 때문에 위의 칸과 비교하여 최소값을 가져옴
이후 피자와 오븐의 맨 아랫칸부터 비교하여 채워줌
This post is licensed under CC BY 4.0 by the author.