programming study/Algorithm (275) 썸네일형 리스트형 [프로그래머스] k번째수 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // k번째수 function solution(array, commands) { let answer = []; // 2차원 배열 commands를 하나씩 접근 for (let command of commands) { // 시작 인덱스 const start = command[0] - 1; // 끝 인덱스 const end = command[1]; // 뽑을 인덱스 const pick = command[2] - 1; // 배열 슬라이싱 const arraySlice = array.slice(start, end); // 정렬 arraySlice.sort((a, b) => a - b); // 뽑아낸.. [프로그래머스] 다리를 지나는 트럭 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 다리를 지나는 트럭 function solution(bridge_length, weight, truck_weights) { let answer = 0; // 다리 만들기 const bridge = []; for (let i = 0; i < bridge_length; i++) { bridge[i] = 0; } // 트럭을 이동시키기 // 트럭 배열이 빌때까지 실행 while (true) { // 다리위의 트럭 이동처리 bridge.shift(); bridge.push(0); answer += 1; // 다리의 현재 무게 let bridgeWeight = bridge.reduce((prev.. [프로그래머스] 프린터 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 프린터 function solution(priorities, location) { let answer = 0; // priorities에서 목표 문서를 표시하는 배열 생성 const checkArray = []; // 목표 문서의 위치 요소는 true, 나머지는 false로 초기화 for (let i = 0; i < priorities.length; i++) { if (i === location) { checkArray[i] = true; } else { checkArray[i] = false; } } // priorites가 전부 비워질 때까지 실행 while (priorities.l.. [프로그래머스] 기능개발 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 기능개발 function solution(progresses, speeds) { let answer = []; // progresses가 존재하면 실행 while (progresses.length > 0) { // 가장 맨 앞의 요소가 100보다 아래일 떄 while (progresses[0] < 100) { // 각 요소에 해당하는 speeds 요소 더하기 for (let i = 0; i < progresses.length; i++) { progresses[i] += speeds[i]; } } // 완료된 작업 수 let complitedProgress = 0; // 가장 맨 앞의 요.. [프로그래머스] 베스트앨범 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 베스트앨범 function solution(genres, plays) { let answer = []; // genres 하나씩 접근 // 장르별로 재생정보를 정리한 해시 const genresPlaysHash = {}; for (let i = 0; i < genres.length; i++) { // key초기화 if (!(genres[i] in genresPlaysHash)) { // 0번 인덱스는 총 재생 횟수 genresPlaysHash[genres[i]] = [['total', plays[i]]]; // i번의 재생수 genresPlaysHash[genres[i]].push([i.. [프로그래머스] 위장 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 위장 function solution(clothes) { let answer = 1; // clothes 해시 만들기 // key: 의상의 종류, value: 의상 배열 const clothesHash = {}; for (let cloth of clothes) { if (!(cloth[1] in clothesHash)) { clothesHash[cloth[1]] = [cloth[0]]; } else { clothesHash[cloth[1]].push(cloth[0]); } } // 조합 세기 for (let cloth in clothesHash) { const clothEA = clot.. [프로그래머스] 완주하지 못한 선수 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 완주하지 못한 선수 function solution(participant, completion) { let answer = ''; // 입력받은 participant를 하나씩 접근하여 해시 만들기 const playerHash = {} for (let player of participant) { if (!(player in playerHash)) { playerHash[player] = 1; } else { playerHash[player] += 1; } } // 완주한 선수 하나씩 접근 for (let finishedPlayer of completion) { playerHash[fin.. [프로그래머스] 비밀지도 - JavaScript 풀이 본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다 자바스크립트 코드(나의 풀이) // 비밀 지도 function solution(n, arr1, arr2) { let answer = []; for (let i = 0; i < n; i++) { // 입력받은 두 array의 수를 하나씩 가져와서 이진법 변환 // 0을 채워서 자릿수 맞추기 const arr1Bin = arr1[i].toString(2).padStart(n, 0); const arr2Bin = arr2[i].toString(2).padStart(n, 0); // 만들어진 두 이진수(문자열)을 한글자씩 접근하여 비교하기 // 둘 중 하나라도 1이면 #(벽), 둘다 0인경우 공백 // 지도의 한 줄 let ma.. 이전 1 ··· 15 16 17 18 19 20 21 ··· 35 다음