728x90
SMALL
문제 이해
- 햄버거를 빵, 야채, 고기, 빵 순서로 만들수 있는 개수를 구해라
- 연속된 순서여야만 햄버거로 만들수 있다.
- 1,2,3 순서대로 빵,야채,고기 이다.
- 햄버거를 만들면 만들어진 부분이 제거된 상태로 재료를 다시 쌓아서 햄버거가 완성되는지 본다.
문제의 경우 리스트에서 [1,2,3,1] 을 찾고 리스트에서 해당 인덱스들을 삭제후 다시 [1,2,3,1]을 찾는 작업을 한다.
리스트의 index의 경우 햄버거를 찾았을때 다시 처음으로 돌아가는게 아닌 찾은 위치의 -3부터 시작해서 찾는다 이경우는 어차피 앞부분은 햄버거를 못찾기에 다시 햄버거를 만들수 있는 -3인덱스로 시작해서 탐색한다.
마지막 햄버거의 경우 리스트길이 -3보다 인덱스가 크면 반복문은 끝난다.
def solution(ingredient):
answer = 0
index = 0
while True:
if len(ingredient) - 3 < index:
break
if ingredient[index:index+4] == [1,2,3,1]:
del ingredient[index:index+4]
index = index-3
answer += 1
index += 1
return answer
728x90
LIST
'파이썬 > 코딩테스트' 카테고리의 다른 글
[프로그래머스] 콜라 문제 - Python(파이썬) (0) | 2024.03.23 |
---|---|
[프로그래머스] 옹알이(2) - Python(파이썬) (0) | 2024.03.23 |
[프로그래머스] 푸드 파이트 대회 - Python(파이썬) (0) | 2024.03.23 |
[프로그래머스] 가장 가까운 같은 글자 - Python(파이썬) (0) | 2024.03.23 |
[프로그래머스] 과일 장수 - Python(파이썬) (0) | 2024.03.23 |