min
프로그래머스 카드뭉치 자바스크립트 본문
<문제>
https://school.programmers.co.kr/learn/courses/30/lessons/159994#
<나의 풀이>
//cards1에서 원소를 하나뽑는다.
//cards2에서 원소를 하나뽑는다.
//만약에 cards1에서 원소가 goal에서의 원소와 같을 때 다음 과정을 수행한다.
//goal의 원소의 값을 하나 제거한다.
//cards2와는 비교하지 않는다.
//만약에 cards2에서 원소가 goal에서의 원소와 같을 때 다음 과정을 수행한다.
//goal의 원소의 값을 하나 제거한다.
//cards1와는 비교하지 않는다.
function solution(cards1, cards2, goal) {
let card1Idx = 0;
let card2Idx = 0;
let goalIdx = 0;
while(goalIdx < goal.length) {
if (cards1[card1Idx] === goal[goalIdx]) {
card1Idx += 1;
goalIdx += 1
}
else if (cards2[card2Idx] === goal[goalIdx]) {
card2Idx += 1;
goalIdx += 1;
}
else {
return "No";
}
}
return "Yes";
}
<다른 사람의 풀이>
function solution(cards1, cards2, goal) {
for(const s of goal) {
if(cards1[0] == s) {
cards1.shift();
} else if(cards2[0] == s) {
cards2.shift();
} else {
return "No"
}
}
return "Yes";
}
<참고자료>
shift()
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/shift
'알고리즘' 카테고리의 다른 글
프로그래머스 다트 게임 자바스크립트 (0) | 2023.08.22 |
---|---|
프로그래머스 덧칠하기 자바스크립트 (0) | 2023.08.21 |
프로그래머스 비밀지도 자바스크립트 (0) | 2023.08.19 |
프로그래머스 기사단원의 무기 자바스크립트 (0) | 2023.08.18 |
프로그래머스 명예의 전당 자바스크립트 (0) | 2023.08.17 |