오늘도 조원분들과 함께 한 코드카타가 너무 어렵고 재밌었음.
결국 혼자 풀지 못하고 gpt의 도움을 약간 받았지만,,🥹
- 간단 문제 설명
cards1, cards2 에서 카드를 하나씩 순서대로 꺼내서 나열, goal 문자열과 같으면 'YES' 반환, 틀리면 'NO'를 반환
카드를 for문을 돌려서 확인하고, 담을 수는 있었는데, 순서대로 담아야하는 점이 어려웠음. gpt한테 순서에 대한 질문을 했는데, 인덱스를 밀어버리는 방법을 추천해줬음.
gpt 힌트 받고
최종 작성한 정답코드
def solution(cards1, cards2, goal):
cards1index, cards2index = 0, 0
for i in goal:
if cards1index < len(cards1) and i == cards1[cards1index]:
cards1index += 1
elif cards2index < len(cards2) and i == cards2[cards2index]:
cards2index += 1
else:
return "No"
return "Yes"
답안 제출 후
다른사람 답변을 봤는데 아주 좋은 코드를 발견했음.
def solution(cards1, cards2, goal):
for g in goal:
if len(cards1) > 0 and g == cards1[0]:
cards1.pop(0)
elif len(cards2) >0 and g == cards2[0]:
cards2.pop(0)
else:
return "No"
return "Yes"
pop을 사용한 코드인데, 인덱스값을 밀어버리는 것 보다 훨씬 간결하고, 가독성이 좋아보임.
이 코드를 보고 pop, remove,del의 차이가 궁금해져서 찾아봄

독감 얼릉 나아요~우리누나 아프지마요