본문 바로가기

CS/알고리즘

(6)
종이접기 [프로그래머스] 실패 문제 "[
탑 _프로그래머스 var result = []; var count = 0; for (var i = height.length-1; i>=0; i--) { var unshifted = false; for (var j = i-1; j>=0; j--) { if (height[i] < height[j]) { result.unshift( (j+1) ); unshifted = true; break; } } if (unshifted == false){ result.unshift(0); } } 다른이들의 답이 궁금하지만, 다른 공부하다 못참겠어서 잠깐하고 넘어가는거라 내일 정리 !
k번째수 function solution(array, commands) { var answer = []; for(let i = 0; i a-b); const tmpAnswer = splitArray[commands[i][2]-1] answer.push(tmpAnswer); } return answer; } slice 두번째 인자로 "commands[i][1] -1"을 줘버려가지고 헤맸다. 역시 문법에 익숙해져야합니다 . sort 정렬이 무조건 낮은 순서대로 되는게 아니다. [1, 2, 10, 3] 이렇게 있는 것을 .sort..
완전탐색 모의고사 수포자 / '%'를 쓸줄아느냐. 내 접근 방식 사람마다 규칙에 따라 답이 반복되는데 이걸 계산식으로 표현할수 있나...? 어떻게 하지..? 생각이 안났다. 그래서 정답 리스트를 만들어버렸다. while (per3.length < answers.length) { per3.concat(per3); } 이렇게하면 정답 길이근처만큼 개인의 답이 확장되겠지? but 너무 메모리를 크게 사용한다. 이 문제의 핵심은 "%" 나머지 기호를 잘 쓸줄 아느냐. function solution(answers) { var answer = []; const man1 = [1, 2, 3, 4, 5]; const man2 = [2, 1, 2, 3, 2, 4, 2, 5]; const man3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]; let co..
완주하지 못한 선수. 나의 풀이 function solution(participant, completion) { var answer = ''; participant.sort(); completion.sort(); for (var i= 0; i < participant.length; i++) { if (participant[i] === completion[i]){ } else { answer = participant[i]; return answer; } } return answer; } 떠오른 생각_ 1. 두 리스트 participant와 completion을 오름차순이든 내림차순이든 같은 방식으로 정렬한다. 2. loop를 돌려 같은 번째 인덱스끼리 비교한다. 3. 같은 인덱스끼리 비교했을 때 같은 값이 나오지 않으면 그 인..
크레인 인형뽑기 게임 만든 답 ! 정답~ function solution(board, moves) { const bucket = []; let result = 0; for (const m of moves) {// 1번 loop for (let b = 0; b 0) {// "m-1" 체크 if (bucket[bucket.length -1] === board[b][m-1]) { // bucket 값의 맨위와 새로들어오는 값을 비교해야함. result += 2; bucket.pop(); } else { bucket.push(board[b][m-1]); // 같은 값이 아니면 push. } board[b][m-1] = 0; // board..