자바스크립트 코딩테스트

프로그래머스 Level 1 - 카드뭉치 (Javascript)

준벨롭 2023. 12. 7. 01:32

문제

답안

function solution(cards1, cards2, goal) {
    let length = goal.length;
    
    for(let i = 0; i < length; i++){
        if(cards1[0] == goal[0]){
            cards1.shift();
            goal.shift();
        }
        if(cards2[0] == goal[0]){
            cards2.shift();
            goal.shift();
        }
    }
        if(goal[0] === undefined){
            return "Yes";
    }
    return "No";
}

후기

cards1[0] 이 goal[0] 이면 둘다 shift 메서드를 이용해 앞에 있는 값들을 제거한다.

아니라면 cards2[0]을 확인하고 지운다.

만약 goal의 값이 다 지워져서 goal[0] 값이 undefined 라면 Yes를 출력, 그 이외의 경우에는 No를 출력한다.

728x90