나 개발자 할래요
[JS] 카드 뭉치 본문
function solution(cards1, cards2, goal) {
for (const word of goal) {
if(cards1[0] === word) {
cards1.shift()
} else if (cards2[0] === word) {
cards2.shift()
} else {
return "No";
}
} return "Yes";
}
'goal' 배열의 각 단어를 하나씩 순회합니다.
현재 단어가 'cards1' 배열의 첫 단어 와 같으면 'cards1'의 첫 단어 제거합니다.
만약 현재 단어가 'cards2' 배열의 첫 단어와 같으면 'cards2'의 첫 단어 제거합니다.
만약 두 배열의 첫 단어 모두 현재 단어와 다르면, 'goal'배열을 완성시키지 못하므로 "No"를 반환합니다.
모든 단어를 처리하면 'goal'배열을 완성시킨 것으로 "Yes" 반환합니다.
goal = ["i", "want", "to", "drink", "water"];
for (const word of goal) {
console.log(word);
}
// 출력:
// "i"
// "want"
// "to"
// "drink"
// "water"
'for...of'문은 배열, 문자열, 맵, 세트 등과 같은 반복 가능한 객체의 각 요소를 순회할 때 사용하는 문법
let card1 = ["i", "drink", "water"];
let removed = card1.shift();
console.log(removed); // 출력: "i"
console.log(numbers); // 출력: ["drink", "water"]
'shift'는 JS배열에서 사용하는 메서드로, 배열의 첫 번째 요소를 제거하고, 제거된 요소를 반환합니다.
'개발자 되는 법... > 코딩테스트...' 카테고리의 다른 글
[JS] 모의고사 (0) | 2024.08.12 |
---|---|
[JS] 과일 장수 (0) | 2024.08.09 |
[JS] 2016 (0) | 2024.08.01 |
[JS] 명예의 전당 (0) | 2024.07.31 |
[JS] 콜라 문제 (0) | 2024.07.18 |