๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด/-

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]ํƒ๋ฐฐ์ƒ์ž

by syLim___ 2023. 6. 23.
728x90

https://school.programmers.co.kr/learn/courses/30/lessons/131704#

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr


์ฒ˜์Œ์—๋Š” container ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด์„œ ๋‚ด๋ถ€์— 1~n๊นŒ์ง€ ๊ฐ’์„ ๋„ฃ์€ ๋’ค

popํ•ด๊ฐ€๋ฉด์„œ ๋น„๊ตํ•ด ์ฐพ์•˜์—ˆ๋Š”๋ฐ, ๋ช‡๋ช‡ ํ…Œ์ผ€์—์„œ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚ฌ๋‹ค.

 

์ƒ๊ฐํ•ด๋ณด๋‹ˆ container๋ฅผ ๊ตณ์ด ๋ฆฌ์ŠคํŠธ๋กœ ๋งŒ๋“ค ํ•„์š”๊ฐ€ ์—†์—ˆ๋‹ค.

ํ˜„์žฌ ์ปจํ…Œ์ด๋„ˆ ๋งจ ์•ž ๋ฐ•์Šค ๋ฒˆํ˜ธ๋งŒ ์•Œ๋ฉด ๋˜๊ณ , ์ด ๋ฒˆํ˜ธ๋Š” 1๋ถ€ํ„ฐ ์ฐจ๋ก€๋กœ ์ฆ๊ฐ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์—

container๋ฅผ int๋กœ ์„ค์ •ํ•˜์˜€๋‹ค.

 

python

def solution(order):
    answer = 0
    n = len(order)

    container = 1
    temp = []
    truck = 0
    
    for box in order:
        if box >= container:
            while True:
                if container == box:
                    truck += 1
                    container += 1
                    break
                else:
                    temp.append(container)
                container += 1
        
        elif len(temp)>0 and temp.pop() == box:
            truck += 1
        else:
            return truck
    
    return truck

 

 

728x90