본문 바로가기

JavaScript33

프로그래머스 Level 1 - 카드뭉치 (Javascript) 문제 답안 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] 값이.. 2023. 12. 7.
프로그래머스 Level 1 - 2016년 (Javascript) 문제 답안 function solution(a, b) { var dayplus = []; let day = ["THU","FRI","SAT","SUN","MON","TUE","WED"]; let monthday = [31,29,31,30,31,30,31,31,30,31,30,31]; let answer = 0; for(let i =0; i a+b) + b; } } //dayplus를 .. 2023. 12. 6.
프로그래머스 Level 1 - 폰켓몬 (Javascript) 문제 답안 function solution(nums) { var answer = 0; let monster = nums.length / 2; for(let i = 0; i < nums.length; i++){ const arr = [...new Set(nums)]; if(nums.length/2 < arr.length){ return nums.length/2; } else { return arr.length; } } } 후기 문제는 길지만 이해하면 풀이하기 어렵지 않은 문제이다. 중복을 제거하는 방법을 사용하는게 핵심 삼항연산자를 이용해 더 간결하게 표현이 가능하다. 2023. 12. 5.
프로그래머스 Level 1 - 과일장수 (Javascript) 문제 답안 function solution(k, m, score) { var answer = 0; let arr = []; let cntBox = Math.floor(score.length / m);//과일박스 갯수 let minNum = k; let cnt = 0; score.sort().reverse(); //score[i]가 k보다 작으면 k값을 score[i]로 바꾸고 cnt 1씩 증가 for(let i = 0; i < cntBox*m; i++){ if(score[i] < minNum){ minNum = score[i]; } cnt += 1; // cnt가 상자갯수와 같아지면 answer에 minNum에 상자갯수를 곱한다. if(cnt == m){ answer += minNum*m; cnt = 0.. 2023. 12. 4.