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

이정연·2022년 11월 10일
0

CodingTest

목록 보기
93/165
post-thumbnail

문제 설명

조건

  • 햄버거 속재료 ingredient 배열
  • 1:빵,2:야채,3:고기
  • 햄버거 = 빵-야채-고기-빵 = [1,2,3,1]

문제

  • 만들 수 있는 햄버거 개수

도구

  • 메인 도구는 스택과 큐 자료구조

스택/큐 용도

  • 리스트1에서 리스트2가 포함되어있을 때 특정 연산을 처리하는 상황에서 스택/큐를 가져다 쓸 수 있다.

설계

  1. ingredient 배열에서 스택/큐를 활용하여 속재료를 하나씩 검사한다.
  2. 스택의 마지막 원소 4개가 [1,2,3,1]과 일치하면 정답을 증가시킨다.

CODE

from collections import deque
def solution(ingredient):
    answer = 0
    ingredient = deque(ingredient)
    stack = []
    while ingredient:
        stack.append(ingredient.popleft())
        if len(stack)>=4 and stack[-4:] == [1,2,3,1]:
            for i in range(4):
                stack.pop()
            answer += 1
    return answer

"""
ingredient - 햄버거 검사 (스택/큐)
햄버거 검사 - result (누적합, [1,2,3,1] = 햄버거)

"""
profile
0x68656C6C6F21

0개의 댓글