๋ฌธ์ ์ค๋ช
์ฃผ์์ด๋ ์นดํ๋ฅผ ์ด์ํ๊ณ ์์ต๋๋ค. ์ฃผ์์ด์ ์นดํ๋ ๋ง์ง์ผ๋ก ์๋ฌธ๋์ ํญ์ ์ค์ด ๋์ด์ง ์์ต๋๋ค. ํ์ง๋ง ์นดํ๊ฐ ํ์ํ์ฌ ์ปคํผ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์๋๋ค์ ์ข ์ข ๋ถ๋ง์ ํ ๋กํ๊ณ ์์ต๋๋ค. ์ฃผ์์ด๋ ์นดํ๋ฅผ ํ์ฅํ๊ธฐ๋ก ํ๊ณ , ์ผ๋ง๋ ๋ง์ ์๋๋ค์ด ๋์์ ์นดํ์ ๋จธ๋ฌด๋์ง ํ์ธํด๋ณด๋ ค ํฉ๋๋ค.
์ฃผ์์ด๋ค ์นดํ์๋ ์์ ์ ์์ํ์๋ง์ 0์ด์ ์๋ ํ ๋ช ์ด ๊ฐ๊ฒ์ ๋์ฐฉํ๊ณ , ์ ํํ k์ด๋ง๋ค ์๋ก์ด ์๋ ํ ๋ช ์ด ์นดํ์ ์์ ์ค์ ์ญ๋๋ค. ์๋๋ค์ ํค์ค์คํฌ๋ฅผ ํตํด ์ฃผ๋ฌธํ๊ณ , ์ฃผ์์ด๋ ์ฃผ๋ฌธ๋ฐ์ ์์๋๋ก ์๋ฃ๋ฅผ ๋ง๋ญ๋๋ค. ์ฃผ์์ด๋ ์๋ฃ๋ฅผ ํ ๋ฒ์ ํ๋์ฉ ๋ง๋ค๋ฉฐ, ์ง๊ธ ๋ง๋ค๊ณ ์๋ ์๋ฃ๋ฅผ ๋ค ๋ง๋ค๋ฉด ๋ค์ ์๋ฃ๋ฅผ ๋ง๋ค๊ธฐ ์์ํฉ๋๋ค. ์๋์ ์์ ์ด ์ฃผ๋ฌธํ ์๋ฃ๋ฅผ ๋ฐ์๋ง์ ์นดํ๋ฅผ ๋๊ฐ๋๋ค. ์ฃผ์์ด๋ค ์นดํ์๋ ์ฌ๋ฌ ์ข ๋ฅ์ ์๋ฃ๋ฅผ ํ๋งคํ๊ณ ์๋๋ฐ ๊ฐ ์๋ฃ๋ค์ 0๋ฒ๋ถํฐ ์ฐจ๋ก๋๋ก ๋ฒํธ๊ฐ ์ง์ ๋์ด ์์ต๋๋ค. ๋ํ ์ฃผ์์ด๊ฐ ๊ฐ์ ์ข ๋ฅ์ ์๋ฃ๋ฅผ ๋ง๋๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ํญ์ ๋์ผํฉ๋๋ค.
์ฃผ์์ด๋ ์ค๋ ์ฃผ๋ฌธ๋ฐ์ ์๋ฃ ๋ชฉ๋ก์ ์ด์ฉํ์ฌ, ์นดํ์์ ์๋๋ค์ด ๋์์ ์ต๋ ๋ช ๋ช ์ด ๋จธ๋ฌผ๋ ๋์ง ์๊ณ ์ถ์ต๋๋ค. ์๋๋ค์ด ์นดํ์ ๋์ฐฉํ์ฌ ์ฃผ๋ฌธํ๊ธฐ๊น์ง ๊ฑธ๋ฆฐ ์๊ฐ๊ณผ ์๋ฃ๋ฅผ ๋ฐ์ ํ ์นดํ๋ฅผ ๋๊ฐ๋ ์๊ฐ์ ์๋ฃ ์ ์กฐ ์๊ฐ์ ๋นํด ๋๋จํ ์งง๊ธฐ ๋๋ฌธ์ ๋ฌด์ํฉ๋๋ค. ํ ์๋์ด ์นดํ์์ ๋๊ฐ๊ณผ ๋์์ ๋ค๋ฅธ ์๋์ด ์นดํ์ ๋ค์ด์ฌ ๊ฒฝ์ฐ, ๋๊ฐ๋ ์๋์ด ๋จผ์ ํด์ฅํ ๋ค์ ๋ค์ด์ค๋ ์๋์ด ์ ์ฅํฉ๋๋ค.
์๋ฅผ ๋ค์ด, ์ฃผ์์ด๋ค ์นดํ์์ ์ธ ์ข ๋ฅ์ ์๋ฃ๋ฅผ ํ๋งคํ๊ณ ์ ์กฐ ์๊ฐ์ 0๋ฒ ์๋ฃ๊ฐ 5์ด, 1๋ฒ ์๋ฃ๊ฐ 12์ด, 2๋ฒ ์๋ฃ๋ 30์ด ์์๋๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ์์ ์ ์์ํ ๋ค 4๋ช ์ ์๋์ด ๊ฐ๊ฐ 0์ด, 10์ด, 20์ด, 30์ด์ ์นดํ์ ๋์ฐฉํ์ฌ ์์๋๋ก 1๋ฒ, 2๋ฒ, 0๋ฒ, 1๋ฒ ์๋ฃ๋ฅผ ์ฃผ๋ฌธํ ๊ฒฝ์ฐ, ์์ ์์ ํ 30์ด๋ถํฐ 42์ด ์ฌ์ด์ 3๋ช ์ ์๋์ด ๊ธฐ๋ค๋ฆฌ๊ฒ ๋๊ณ , ์ด๋๊ฐ ๋์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ ์๋์ด ๊ฐ์ฅ ๋ง์ ์๊ฐ์ ๋๋ค.
์ฃผ์์ด๋ค ์นดํ์์ ํ๋งคํ๋ ๊ฐ ์๋ฃ๋ค์ ์ ์กฐ ์๊ฐ์ ๋ด์ ์ ์ ๋ฐฐ์ด menu์ ์ค๋ ์๋๋ค์ด ์ฃผ๋ฌธํ ์๋ฃ๊ฐ ์์๋๋ก ์ ํ ๋ฐฐ์ด order, ์๋ก์ด ํ ๋ช ์ ์๋์ด ๋ฐฉ๋ฌธํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ธ k๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ์ค๋ ์นดํ์ ๋์์ ์กด์ฌํ ์๋ ์์ ์ต๋๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- 1 ≤ menu์ ๊ธธ์ด ≤ 100
- menu[i]๋ i๋ฒ ์๋ฃ์ ์ ์กฐ ์๊ฐ์ ์๋ฏธํฉ๋๋ค.
- 1 ≤ menu์ ์์ ≤ 100
- 1 ≤ order์ ๊ธธ์ด ≤ 10,000
- order[i]๋ i๋ฒ์งธ ์๋์ด ์ฃผ๋ฌธํ ์๋ฃ์ ๋ฒํธ์ ๋๋ค.
- 0 ≤ order์ ์์ < menu์ ๊ธธ์ด
- 1 ≤ k ≤ 100
์ ์ถ๋ ฅ ์
menu | order | k | result |
[5, 12, 30] | [1, 2, 0, 1] | 10 | 3 |
[5, 12, 30] | [2, 1, 0, 0, 0, 1, 0] | 10 | 4 |
[5] | [0, 0, 0, 0, 0] | 5 | 1 |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- ๋ณธ๋ฌธ์์ ์ค๋ช ํ ์์์ ๋๋ค.
์ ์ถ๋ ฅ ์ #2
- ์์ ์์ ํ ๊ฐ์ฅ ๋จผ์ ๋์ฐฉํ ์๋์ 0์ด์ ์ฃผ๋ฌธ์ ๋ฐ๊ณ 30์ด์ ์นดํ๋ฅผ ๋๊ฐ๋๋ค. ์์ ์์ ํ 10์ด์ ๋์ฐฉํ ์๋์ 42์ด์ ์๋ฃ๋ฅผ ๋ฐ๊ณ ์นดํ๋ฅผ ๋๊ฐ๊ฒ ๋ฉ๋๋ค. ๊ทธ ์ฌ์ด 20์ด, 30์ด, 40์ด์ ์๋๋ค์ด ๊ฐ๊ฐ ๋ค์ด์, 40์ด~42์ด ์ฌ์ด์ ์ด 4๋ช ์ ์๋๋ค์ด ๋์์ ์นดํ์์ ๊ธฐ๋ค๋ฆฌ๊ณ , ์ด ์๊ฐ ๋์์ ๊ธฐ๋ค๋ฆฌ๋ ์๋ ์์ ์ต๋๊ฐ์ ๋๋ค.
ํ์ด
- k ํ์๋ง๋ค order๋ฅผ ํ๋์ฉ ์ฒ๋ฆฌ
- order[i] = menu์ ์ธ๋ฑ์ค... menu[order[i]] = ์๋ฃ๊ฐ ๋์ค๋ ์์์๊ฐ
- ์ด๊ฒ๋ ์ฐ์ ์์ํ ์๋ ํํ์ ์๋์ด ๋์ฐฉํ ์๊ฐ์ ๋ฃ๊ณ ,
- ์์์๊ฐ์ด ๋์ด๊ฐ์ผ๋ฉด ์๊ธฐ๋ค๋ฆฐ๊ฑฐ๊ณ , ์๋๋ฉด ๊ธฐ๋ค๋ฆฐ๊ฑฐ๊ณ
- ์? ๋์์ ์กด์ฌํ ์ต๋ ์๋ ์... ๊ทธ๋ฌ๋๊น max(ํํ์ ๊ธธ์ด)๋ฅผ ๋ฝ๋ ๋ฌธ์ ...
- ์์์๊ฐ์ด ๋์ด๊ฐ์ผ๋ฉด ์๊ธฐ๋ค๋ฆฐ๊ฑฐ๊ณ , ์๋๋ฉด ๊ธฐ๋ค๋ฆฐ๊ฑฐ๊ณ
- ๊ทผ๋ฐ ๋ ์ฐ์ ์์ํ์ ๋ฃ๋ ๋ฌธ์ ์ ์ฝํ๋จ ๋ง์ด์ง...
- ์ด๋ป๊ฒ ํด์ผ๋ผ? ใ ใ ใ
1ํธ
- ๊ทธ๋ฅ ๋ฐฐ์ด์ ํ๋๋ฅผ ๋ ๋ง๋ค๊ณ ,
- order ์์๋๋ก ๋์ฐฉํด์ ๊ธฐ๋ค๋ฆฐ ์๊ฐ + ์๋ฃ ๋ง๋๋๋ฐ ์์๋ ์๊ฐ์ ์ ์ฅํ๊ณ ,
- ๋์ค์ ๋์ฐฉ~๋๊ฐ๋๊น์ง์ ์๊ฐ์ด ๊ฒน์น๋ ์ ์ ๋ค๋ง ์ฐพ๋ ๋ฐฉ์์ผ๋ก ํ๋ฉด ์๋๋?
- order ์์๋๋ก ๋์ฐฉํด์ ๊ธฐ๋ค๋ฆฐ ์๊ฐ + ์๋ฃ ๋ง๋๋๋ฐ ์์๋ ์๊ฐ์ ์ ์ฅํ๊ณ ,
- ํด๋ณด์
- ์๋ฃ ์๊ฐ [5,12,30]
- ์๋ ์ฃผ๋ฌธ [1,2,1,1]
- ๋์ฐฉ ์๊ฐ [0,10,20,30] / k = 10์ด๋๊น
- ์ง์ง ์ฃผ๋ฌธ [0,12,42,54...
- ๋๊ฐ ์๊ฐ [12,42,54,66...
- ๊ทธ๋ผ ๋์ฐฉ์๊ฐ์ด๋ ๋๊ฐ์๊ฐ์ ๋น๊ตํ๋ฉด
- (๋์ฐฉ์๊ฐ < ๋๊ฐ์๊ฐ)์ด๋ฐ ์ผ์ด์ค์ ์
- ๋์ฐฉ ์๊ฐ [0,10,20,30]
- ๋๊ฐ ์๊ฐ [12,42,54,66]
- 2์ค for๋ฌธ์ด๋ค... 1๋ง๊ฐx1๋ง๊ฐ... 1์ต๊ฐ...
- ์๊ฐ ์ผ๋ง๋ ๊ฑธ๋ฆฌ๋ ๋ณผ๊น?
- ์๊ฐ ์ด๊ณผ๋ ์๋์ง๋ง... ์ด๊ฑด ์๋ ๊ฑฐ ๊ฐ์ง? ใ ใ ใ
def solution(menu, order, k):
answer = 0
for i in range(len(order)):
for j in range(len(order)):
answer += 1
return answer
ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ์คํจ (969.55ms, 10MB)
ํ
์คํธ 2 ใ ์คํจ (3929.77ms, 10.3MB)
ํ
์คํธ 3 ใ ์คํจ (4004.79ms, 10.3MB)
ํ
์คํธ 4 ใ ์คํจ (4149.90ms, 10.2MB)
ํ
์คํธ 5 ใ ์คํจ (3934.17ms, 10.2MB)
ํ
์คํธ 6 ใ ์คํจ (3904.80ms, 10.4MB)
ํ
์คํธ 7 ใ ์คํจ (4496.92ms, 10.3MB)
ํ
์คํธ 8 ใ ์คํจ (4069.37ms, 10.2MB)
ํ
์คํธ 9 ใ ์คํจ (4017.02ms, 10.3MB)
ํ
์คํธ 10 ใ ์คํจ (3826.11ms, 10.2MB)
ํ
์คํธ 11 ใ ์คํจ (0.00ms, 10.3MB)
2ํธ
- ํํ ์์๋ค. ์ด๋ป๊ฒ ํด์ผ๋๋... ใ .ใ
- k ํ์๋ง๋ค
- order๋ฅผ ํ๋์ฉ ํํ์ ๋ฃ๊ณ ... kํ์์ ๊ธฐ์ค์ผ๋ก...
- k ํ์์ด๋ ๋ฉ๋ด์ ์์์๊ฐ๋ง ๋ฃ์ผ๋ฉด ๋ ๋ฏ
- order[i] = menu์ ์ธ๋ฑ์ค... menu[order[i]] = ์๋ฃ๊ฐ ๋์ค๋ ์์์๊ฐ
- ๊ทธ๋ฆฌ๊ณ k ํ์๋ง๋ค
- ๋์์ ์กด์ฌํ ์ต๋ ์๋ ์... ๊ทธ๋ฌ๋๊น max(ํํ์ ๊ธธ์ด)๋ฅผ ๋ฝ๋ ๋ฌธ์ ...
- ์๋์ด ๋์ฐฉํ ์๊ฐ < ์ด์ ๋ฉ๋ด์ ์์์๊ฐ์ด๋ฉด ๋๊ธฐ...
- ํ๋ค๋ณด๋ ํ์ฌ ์๊ฐ์ด ํ์์๋ค? ์๋๊ฐ?
- ์ด์ ๋ณด๋ ํํ ์์จ๋ ๋จ.
from heapq import heappush as push, heappop as pop
def solution(menu, order, k):
pq = []
isWorking = False
max_heap, i, begin, end = 0,0,0,0
while len(order) > 0 or len(pq) > 0:
if i % k == 0 and len(order) > 0: # ์๊ฐ ๋ ๋ ๋ง๋ค ์๋ ๋ฐ์ด๋ฃ๊ธฐ
push(pq, (i, menu[order.pop(0)]))
print(i, pq, "์๋ ๋ฐ๊ธฐ")
if isWorking == True: # ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
print(i,pq,"์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.")
if end <= i:
if len(pq) > 0:
a, b = pop(pq)
isWorking = False
print("์ผ ๋๋ฌ๋ค", isWorking, len(pq))
if isWorking == False and len(pq) > 0: # ์ฌ๋์ด ์ฌ ์๊ฐ์ธ๊ฐ?
print("๋๊ณ ์์.")
begin = pq[0][0]
if begin <= i: # ์ฌ ์๊ฐ์ด๋ค.
end = pq[0][1] + i
print(i,pq,"์ผํฉ๋๋ค")
isWorking = True # ์ผํฉ๋๋ค.
max_heap = max(max_heap, len(pq)) # ๋๊ธฐ์ค์ธ ์๋ ์ ๋น๊ต
i += 1
return max_heap
ํ
์คํธ 1
์
๋ ฅ๊ฐ ใ [5, 12, 30], [1, 2, 0, 1], 10
๊ธฐ๋๊ฐ ใ 3
์คํ ๊ฒฐ๊ณผ ใ ํ
์คํธ๋ฅผ ํต๊ณผํ์์ต๋๋ค.
์ถ๋ ฅ ใ
0 [(0, 12)] ์๋ ๋ฐ๊ธฐ
๋๊ณ ์์.
0 [(0, 12)] ์ผํฉ๋๋ค
1 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
2 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
3 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
4 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
5 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
6 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
7 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
8 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
9 [(0, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
10 [(0, 12), (10, 30)] ์๋ ๋ฐ๊ธฐ
10 [(0, 12), (10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
11 [(0, 12), (10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
12 [(0, 12), (10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
12 [(10, 30)] ์ผํฉ๋๋ค
13 [(10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
14 [(10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
15 [(10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
16 [(10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
17 [(10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
18 [(10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
19 [(10, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
20 [(10, 30), (20, 5)] ์๋ ๋ฐ๊ธฐ
20 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
21 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
22 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
23 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
24 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
25 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
26 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
27 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
28 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
29 [(10, 30), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
30 [(10, 30), (20, 5), (30, 12)] ์๋ ๋ฐ๊ธฐ
30 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
31 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
32 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
33 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
34 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
35 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
36 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
37 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
38 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
39 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
40 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
41 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
42 [(10, 30), (20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 2
๋๊ณ ์์.
42 [(20, 5), (30, 12)] ์ผํฉ๋๋ค
43 [(20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
44 [(20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
45 [(20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
46 [(20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
47 [(20, 5), (30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
47 [(30, 12)] ์ผํฉ๋๋ค
48 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
49 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
50 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
51 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
52 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
53 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
54 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
55 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
56 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
57 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
58 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
59 [(30, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 0
ํ
์คํธ 2
์
๋ ฅ๊ฐ ใ [5, 12, 30], [2, 1, 0, 0, 0, 1, 0], 10
๊ธฐ๋๊ฐ ใ 4
์คํ ๊ฒฐ๊ณผ ใ ํ
์คํธ๋ฅผ ํต๊ณผํ์์ต๋๋ค.
์ถ๋ ฅ ใ
0 [(0, 30)] ์๋ ๋ฐ๊ธฐ
๋๊ณ ์์.
0 [(0, 30)] ์ผํฉ๋๋ค
1 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
2 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
3 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
4 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
5 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
6 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
7 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
8 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
9 [(0, 30)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
10 [(0, 30), (10, 12)] ์๋ ๋ฐ๊ธฐ
10 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
11 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
12 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
13 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
14 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
15 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
16 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
17 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
18 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
19 [(0, 30), (10, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
20 [(0, 30), (10, 12), (20, 5)] ์๋ ๋ฐ๊ธฐ
20 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
21 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
22 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
23 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
24 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
25 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
26 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
27 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
28 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
29 [(0, 30), (10, 12), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
30 [(0, 30), (10, 12), (20, 5), (30, 5)] ์๋ ๋ฐ๊ธฐ
30 [(0, 30), (10, 12), (20, 5), (30, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 3
๋๊ณ ์์.
30 [(10, 12), (30, 5), (20, 5)] ์ผํฉ๋๋ค
31 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
32 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
33 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
34 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
35 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
36 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
37 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
38 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
39 [(10, 12), (30, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
40 [(10, 12), (30, 5), (20, 5), (40, 5)] ์๋ ๋ฐ๊ธฐ
40 [(10, 12), (30, 5), (20, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
41 [(10, 12), (30, 5), (20, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
42 [(10, 12), (30, 5), (20, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 3
๋๊ณ ์์.
42 [(20, 5), (30, 5), (40, 5)] ์ผํฉ๋๋ค
43 [(20, 5), (30, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
44 [(20, 5), (30, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
45 [(20, 5), (30, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
46 [(20, 5), (30, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
47 [(20, 5), (30, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 2
๋๊ณ ์์.
47 [(30, 5), (40, 5)] ์ผํฉ๋๋ค
48 [(30, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
49 [(30, 5), (40, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
50 [(30, 5), (40, 5), (50, 12)] ์๋ ๋ฐ๊ธฐ
50 [(30, 5), (40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
51 [(30, 5), (40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
52 [(30, 5), (40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 2
๋๊ณ ์์.
52 [(40, 5), (50, 12)] ์ผํฉ๋๋ค
53 [(40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
54 [(40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
55 [(40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
56 [(40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
57 [(40, 5), (50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
57 [(50, 12)] ์ผํฉ๋๋ค
58 [(50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
59 [(50, 12)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
60 [(50, 12), (60, 5)] ์๋ ๋ฐ๊ธฐ
60 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
61 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
62 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
63 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
64 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
65 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
66 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
67 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
68 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
69 [(50, 12), (60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
69 [(60, 5)] ์ผํฉ๋๋ค
70 [(60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
71 [(60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
72 [(60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
73 [(60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
74 [(60, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 0
ํ
์คํธ 3
์
๋ ฅ๊ฐ ใ [5], [0, 0, 0, 0, 0], 5
๊ธฐ๋๊ฐ ใ 1
์คํ ๊ฒฐ๊ณผ ใ ํ
์คํธ๋ฅผ ํต๊ณผํ์์ต๋๋ค.
์ถ๋ ฅ ใ
0 [(0, 5)] ์๋ ๋ฐ๊ธฐ
๋๊ณ ์์.
0 [(0, 5)] ์ผํฉ๋๋ค
1 [(0, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
2 [(0, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
3 [(0, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
4 [(0, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
5 [(0, 5), (5, 5)] ์๋ ๋ฐ๊ธฐ
5 [(0, 5), (5, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
5 [(5, 5)] ์ผํฉ๋๋ค
6 [(5, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
7 [(5, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
8 [(5, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
9 [(5, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
10 [(5, 5), (10, 5)] ์๋ ๋ฐ๊ธฐ
10 [(5, 5), (10, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
10 [(10, 5)] ์ผํฉ๋๋ค
11 [(10, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
12 [(10, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
13 [(10, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
14 [(10, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
15 [(10, 5), (15, 5)] ์๋ ๋ฐ๊ธฐ
15 [(10, 5), (15, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
15 [(15, 5)] ์ผํฉ๋๋ค
16 [(15, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
17 [(15, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
18 [(15, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
19 [(15, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
20 [(15, 5), (20, 5)] ์๋ ๋ฐ๊ธฐ
20 [(15, 5), (20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 1
๋๊ณ ์์.
20 [(20, 5)] ์ผํฉ๋๋ค
21 [(20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
22 [(20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
23 [(20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
24 [(20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
25 [(20, 5)] ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
์ผ ๋๋ฌ๋ค False 0
- ์ ์ถ ์ฝ๋
- heapq, push, pop์ ์์จ๋ ๋์ง ์์๋ ์ถ์ ๋ฌธ์
- order.pop(0)์ ์ํด๋ ๋๊ณ , heapq๊ฐ ์๋๋ผ ๊ทธ๋ฅ ํ๋ก๋ ๋๋ ๋ฌธ์ ๊ฐ๋ค.
from heapq import heappush as push, heappop as pop
def solution(menu, order, k):
pq = []
isWorking = False
max_heap, i, begin, end = 0,0,0,0
while len(order) > 0 or len(pq) > 0:
if i % k == 0 and len(order) > 0: # ์๊ฐ ๋ ๋ ๋ง๋ค ์๋ ๋ฐ์ด๋ฃ๊ธฐ
push(pq, (i, menu[order.pop(0)]))
if isWorking == True: # ์ผํ๊ณ ์์ต๋๋ค. ๋ฐฉํดํ์ง ๋ง์ธ์.
if end <= i:
if len(pq) > 0:
a, b = pop(pq)
isWorking = False
if isWorking == False and len(pq) > 0: # ์ฌ๋์ด ์ฌ ์๊ฐ์ธ๊ฐ?
begin = pq[0][0]
if begin <= i: # ์ฌ ์๊ฐ์ด๋ค.
end = pq[0][1] + i
isWorking = True # ์ผํฉ๋๋ค.
max_heap = max(max_heap, len(pq)) # ๋๊ธฐ์ค์ธ ์๋ ์ ๋น๊ต
i += 1
return max_heap
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (129.21ms, 10.5MB)
ํ
์คํธ 2 ใ ํต๊ณผ (272.53ms, 10.4MB)
ํ
์คํธ 3 ใ ํต๊ณผ (222.08ms, 10.5MB)
ํ
์คํธ 4 ใ ํต๊ณผ (175.08ms, 10.2MB)
ํ
์คํธ 5 ใ ํต๊ณผ (260.12ms, 10.3MB)
ํ
์คํธ 6 ใ ํต๊ณผ (416.68ms, 10.8MB)
ํ
์คํธ 7 ใ ํต๊ณผ (294.51ms, 10.4MB)
ํ
์คํธ 8 ใ ํต๊ณผ (201.26ms, 10.5MB)
ํ
์คํธ 9 ใ ํต๊ณผ (303.49ms, 10.5MB)
ํ
์คํธ 10 ใ ํต๊ณผ (266.56ms, 10.4MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.03ms, 10.4MB)
- ๊ณ ์์ ํ์ด
from collections import deque
def solution(menu, order, k):
queue = deque()
busy = -1
idx = answer = 0
for t in range(k * (len(order) - 1) + 1):
if k * idx == t:
queue.append(order[idx])
idx += 1
if busy == t:
queue.popleft()
busy = -1
if busy == -1 and len(queue) > 0:
busy = t + menu[queue[0]]
answer = max(answer, len(queue))
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (37.77ms, 10.2MB)
ํ
์คํธ 2 ใ ํต๊ณผ (121.48ms, 10.3MB)
ํ
์คํธ 3 ใ ํต๊ณผ (143.25ms, 10.3MB)
ํ
์คํธ 4 ใ ํต๊ณผ (147.11ms, 10.3MB)
ํ
์คํธ 5 ใ ํต๊ณผ (163.29ms, 10.4MB)
ํ
์คํธ 6 ใ ํต๊ณผ (100.23ms, 10.3MB)
ํ
์คํธ 7 ใ ํต๊ณผ (160.65ms, 10.2MB)
ํ
์คํธ 8 ใ ํต๊ณผ (102.88ms, 10.3MB)
ํ
์คํธ 9 ใ ํต๊ณผ (125.74ms, 10.3MB)
ํ
์คํธ 10 ใ ํต๊ณผ (133.00ms, 10.4MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.01ms, 10.1MB)
- ๋ ๊ณ ์์ ํ์ด
from collections import deque
def solution(menu, order, k):
answer = 1
enter = deque([x * k for x in range(len(order))])
q = deque([enter.popleft()])
curr = 0
for i in range(len(order)):
curr = max(curr, i * k) + menu[order[i]]
while enter and enter[0] < curr:
q.append(enter.popleft())
answer = max(answer, len(q))
q.popleft()
if enter and enter[0] == curr:
q.append(enter.popleft())
return answer
์ ํ์ฑ ํ
์คํธ
ํ
์คํธ 1 ใ ํต๊ณผ (3.36ms, 10.4MB)
ํ
์คํธ 2 ใ ํต๊ณผ (6.65ms, 10.5MB)
ํ
์คํธ 3 ใ ํต๊ณผ (7.97ms, 10.5MB)
ํ
์คํธ 4 ใ ํต๊ณผ (6.76ms, 10.5MB)
ํ
์คํธ 5 ใ ํต๊ณผ (11.85ms, 10.6MB)
ํ
์คํธ 6 ใ ํต๊ณผ (6.32ms, 10.6MB)
ํ
์คํธ 7 ใ ํต๊ณผ (13.66ms, 10.6MB)
ํ
์คํธ 8 ใ ํต๊ณผ (8.34ms, 10.3MB)
ํ
์คํธ 9 ใ ํต๊ณผ (6.42ms, 10.3MB)
ํ
์คํธ 10 ใ ํต๊ณผ (6.76ms, 10.6MB)
ํ
์คํธ 11 ใ ํต๊ณผ (0.02ms, 10.2MB)
'๊ฒ์ ํ๋ก๊ทธ๋๋ฐ > Python ํ๋ก๊ทธ๋๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค ํ ๋ณํฉ (2023 KAKAO BLIND RECRUITMENT) (2) | 2023.03.13 |
---|---|
[PCCP ๋ชจ์๊ณ ์ฌ#2] ๋ณด๋ฌผ ์ง๋ (๊ธธ์ฐพ๊ธฐ) - ๋ฏธ์๋ฃ (0) | 2023.03.12 |
[PCCP ๋ชจ์๊ณ ์ฌ#2] ์ ์ ์ฌ์ ๊ต์ก (์ฐ์ ์์ํ) (0) | 2023.03.10 |
[PCCP ๋ชจ์๊ณ ์ฌ#2] ์ค์ต์ฉ ๋ก๋ด (๋จ์ ๊ตฌํ) (1) | 2023.03.09 |
[PCCP ๋ชจ์๊ณ ์ฌ#1] ์ด์์ฒด์ (์ฐ์ ์์ํ) (1) | 2023.03.08 |