첫번째 조건을 잘못 이해해서 시간이 좀 걸려버렸다.
두번째 카드 뭉치를 통채로? 집어 넣어야 되는 줄 알았음.
def solution(card1, card2, goal):
card1.append('\0') # overflow 방지용
card2.append('\0')
a = 0
b = 0
for x in goal:
if x == card1[a]:
a += 1
elif x == card2[b]:
b += 1
else: return "No"
return "Yes"
맨 앞의 카드만 비교하기 때문에 goal에서 순서대로 비교할 때 card1,2에서 다 안나오면 바로 "No"를 리턴. goal을 끝까지 돌았다면 goal을 만들 수 있다는 뜻이므로 "Yes"를 리턴한다.
한동안 코딩테스트 연습을 안하다 하니까 많은 것을 까먹었다.. 진짜 매일매일 연습해야 하는듯 ㅠ