코딩테스트 문제

[프로그래머스/Python] 햄버거 만들기

왕초보코딩러 2024. 1. 20. 20:53
728x90

문제

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

1 2 3 1 순서가 되면 +1씩 해서 총 카운트 수를 리턴


1. 스택 사용

재료를 하나씩 스택에 넣다가

재료가 1이면 스택에 쌓인 3개를 본다

3개가 1 2 3이면 카운트

def solution(ingredient):
    #1 2 3 1
    answer = 0
    stk = []
    for i in ingredient:
        if i == 1:
            if stk[-3:] == [1, 2, 3]:
                del stk[-3:]
                answer += 1
            else:
                stk.append(i)
        else:
            stk.append(i)
                
    return answer