목록프로그래머스 (167)
안녕하세요
단어 변환(lv3) 문제 보기 (25) 문제 풀이 고려해야할 문제의 조건은 세가지다. 한번에 한개의 알파벳 변경 가능 words에 존재하는 단어로만 변환 가능 중복되는 단어 없음 목표는 words 배열의 길이만큼 변환 시도를 했을 때, 변환할 수 없다면 0을 반환하고, 변환이 가능하다면 최소 변환 횟수를 구하는 것이다. solution("hit", "cog", ["hot", "dot", "dog", "lot", "log", "cig"]); 1. words 배열의 길이만큼 변환 시도를 한다. words.forEach((word, index) => { }); 2. 단어 변환이 가능한지 확인한다. 하나의 알파벳만이 다르면 변환이 가능하기 때문에 몇 개의 알파벳이 일치하는지 확인하면 된다. words.forEa..
기능개발 Level 2 문제보기 (20) 요구사항에서 말해주는 그대로 따라서 차근차근 구현하면 됩니다. 그래서 그런지 다른 사람과 풀이가 99% 똑같았다. 풀이 순서 1. for문을 이용하여 프로세스 각각에 speeds 만큼 더해줍니다. progresses[i] += speeds[i] 2. 연달아 배포한 갯수를 카운트합니다. let completedCount = 0 - while을 이용하여 progresses[0]이 100이상이 아닐 때까지 배열에서 shift()로 제외하고 completedCount+1 하는 과정을 반복합니다. - 배포한 프로세스의 수를 결과 배열에 추가합니다. function solution(progresses, speeds) { const result = []; // 개발진행 사항이..
단어 변환(lv3) 문제 보기 (25) 문제 풀이 고려해야할 문제의 조건은 세가지다. 한번에 한개의 알파벳 변경 가능 words에 존재하는 단어로만 변환 가능 중복되는 단어 없음 목표는 words 배열의 길이만큼 변환 시도를 했을 때, 변환할 수 없다면 0을 반환하고, 변환이 가능하다면 최소 변환 횟수를 구하는 것이다. solution("hit", "cog", ["hot", "dot", "dog", "lot", "log", "cig"]); 1. words 배열의 길이만큼 변환 시도를 한다. words.forEach((word, index) => { }); 2. 단어 변환이 가능한지 확인한다. 하나의 알파벳만이 다르면 변환이 가능하기 때문에 몇 개의 알파벳이 일치하는지 확인하면 된다. let sameCou..
K번째 수 문제 보기 (5) 문제 포인트 - 1번째 부터 시작하기 때문에 i번째, k번째 인덱스를 구하려면 -1을 해주어야 합니다. function solution(array, commands) { const result = [] commands.forEach(([i,j,k],index) => { result.push(array.slice(i-1,j).sort((a,b) => a-b)[k-1]) }) return result } 가장 큰 수 문제 보기 (***) 문제 포인트 sort() 활용 - a와 b의 모양을 "ab"와 "ba" 로 만든 결과를 비교하여 조합하였을 때도 물론 대소를 비교할 수 있다. 1, 9, 19, 91를 예시로정렬 과정을 시각화해보자. 19 & 91 => 19 < 91 이므로 9,..