728x90

반절만 성공했다. 문제 이해는 했는데 구현 부분에서 오류가 있었다. 풀이를 보니 우선 keep 에 append 를 해준 다음 while 문을 통해서 비교했는데 완벽하게 이해는 안됐다.

 

def solution(order):
    answer = 0
 
    box = [ ]
    keep = [ ]
 
    for i in range(1,len(order)+1):
        box.append(i)
 
 
    t_index = 0
    y_index = 0
    k_index = -2
 
    while True:
        truck = order[t_index]
        young = box[y_index]
 
        if truck == young:
 
            answer+=1
            t_index+=1
 
 
 
        else:
            if truck > young:
                for i in range(young, truck):
                    keep.append(i)                    
                    y_index+=1
 
 
 
 
            else:
                if keep[-1] == truck and len(keep)>=1:
 
                    answer+=1
                    t_index+=1
                    del keep[-1]
 
 
                else:
                    break
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    return answer
728x90

+ Recent posts