반응형
문제 설명
def solution(cards1: List[str], cards2: List[str], goal: List[str]) -> str:
...
영단어로 이루어진 두 배열 cards1
과 cards2
를 번갈아가며 연속된 카드를 뽑아 goal
을 만들 수 있는지 여부를 반환하면 된다.
제한사항
- 1 ≤
cards1
의 길이,cards2
의 길이 ≤ 10- 1 ≤
cards1[i]
의 길이,cards2[i]
의 길이 ≤ 10 cards1
과cards2
에는 서로 다른 단어만 존재합니다.
- 1 ≤
- 2 ≤
goal
의 길이 ≤cards1
의 길이 +cards2
의 길이- 1 ≤
goal[i]
의 길이 ≤ 10 goal
의 원소는cards1
과cards2
의 원소들로만 이루어져 있습니다.
- 1 ≤
cards1
,cards2
,goal
의 문자열들은 모두 알파벳 소문자로만 이루어져 있습니다.
풀이
while문을 사용해 goal
배열의 원소를 삭제해가며 확인했다.
제출 코드
def solution(cards1: List[str], cards2: List[str], goal: List[str]) -> str:
while goal:
if cards1 and cards1[0] == goal[0]:
cards1.pop(0)
goal.pop(0)
elif cards2 and cards2[0] == goal[0]:
cards2.pop(0)
goal.pop(0)
else:
break
return "Yes" if not goal else "No"
반응형