Coding/Python

[python]반복문

후__아 2024. 4. 19. 10:42

while문, for문 활용 문제

ㄴwhile문 안에 if-else

ㄴfor문 안에 while문 쓰는 방식 기억하기! + if-else 조건 따졌을 때 어떻게 나눌 수 있는지 고민

# 프로그래머스 배열 만들기4
def solution(arr):
    i = 0
    stk = []
    while i < len(arr):
        if stk:
            if stk[-1] < arr[i]:
                stk.append(arr[i])
                i += 1
            else:
                del stk[-1]
        else:
            stk.append(arr[i])
            i += 1
    return stk
    
    # 다른 사람 풀이
    stk = []
    for i in range(len(arr)):
        while stk and stk[-1] >= arr[i]:
            stk.pop()
        stk.append(arr[i])
    return stk