반응형
풀이
- goal에 있는 단어를 순회하며 두 카드 뭉치의 맨 앞에 있는 단어가 일치하는 경우 꺼내서 사용한다.
- 두 카드 뭉치 모두에서 일치하는 단어가 없다면 No를 반환한다.
- goal을 모두 성공적으로 순회했다면 Yes를 반환한다.
두 카드 뭉치의 맨 앞에 있는 것부터 순차적으로 사용해야 하므로 스택으로 변형하여 pop()을 활용하였다.
def solution(cards1, cards2, goal):
cards1 = cards1[::-1]
cards2 = cards2[::-1]
for word in goal:
if cards1 and word == cards1[-1]:
cards1.pop()
elif cards2 and word == cards2[-1]:
cards2.pop()
else:
return "No"
return "Yes"
반응형
'알고리즘 연습 > 구현, 문자열' 카테고리의 다른 글
[Lv.1 / 프로그래머스 / 파이썬] 둘만의 암호 (0) | 2024.07.09 |
---|---|
[Lv.2 / 프로그래머스 / 파이썬] 다음 큰 숫자 (0) | 2024.06.08 |
[Lv.1 / 프로그래머스 / 파이썬] 대충 만든 자판 (0) | 2024.05.15 |
[🥈2 / 백준 5555 / 파이썬] 반지 (0) | 2024.04.12 |
[Lv.1 / 프로그래머스 / 파이썬] 가장 많이 받은 선물 (2024 KAKAO WINTER INTERNSHIP) (0) | 2024.03.24 |