문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/159994# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 이 문제는 반복문을 이용해 요소들을 비교를 하는 문제이다. 완성된 코드 const solution = (cards1, cards2, goal) => { let answer = 'Yes'; goal.forEach((e) => { if(cards1[0] === e){ cards1.shift(); return; } else if(cards2[0] === e){ cards2..
코테연습
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/77485 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 이 문제는 2차원 배열 문제이며 행열의 회전 중 특정 행열의 범위만 회전하는 문제였다. 나는 실제 행렬을 회전하며 최소값을 찾는 과정을 구현했다. 내가 작성한 코드보다 더 깔끔해 보이는 코드를 발견해서 내 코드밑에 작성해 두겠다. 완성된 코드 const solution = (rows, columns, queries) => { let answer = []; let quer..
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/138477 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 단순 구현 문제로 앞의 k 개 만큼은 명예의 전단 배열에 넣어도 되지만, 그 이후의 점수는 명예의 전당에 이미 들어가 있는 점수들과 비교한 뒤 score[i]의 점수 보다 작아지기 시작하는 점수를 찾아내 뒤로 밀어내야한다. 이때 findIndex 메서드를 이용해 위치를 찾는데 만약 -1을 반환해 조건에 맞는 점수가 없으면 다음으로 넘어간다. 완성된 코드 const so..
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/12946 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 이 문제는 모 부트캠프 코테를 보며 기억에 남은 문제중 한개이다. 하노이의 탑 문제는 기본적으로 재귀 함수를 사용해 풀어야 하는 문제이며, 나는 이걸 이해하기 힘들었다. 문제에서 중요한 것은 제일 큰 원판을 제외한 나머지 원판들은 목적지가 아닌 경유지에 모두 있어야 하고, 제일 큰 원판을 옮긴 뒤 나머지 원판들도 경유지를 거쳐 목적지로 옮겨야 한다는 것이다. 이 때, 재..

문제 설명 문제 풀이 방법 우선 n을 k진수로 바꾸는 것부터 시작했고, 문제 설명에서 0과 인접한 수들을 추출하는 것으로 문제를 파악하기 시작했다. 이는 split('0')을 해주면 0을 기준으로 0이 제외된 배열을 반환하게 되기에 수들의 배열을 확인할 수 있다. 그리고 filter메서드로 1과 빈 문자열을 제외해준다. 0이 제외된, 0에 인접했던 수들의 배열을 forEach메서드를 이용해 각 수들이 소수임을 확인한다. 소수가 맞다면 반환할 값에 1을 더해준다. 이렇게 더해진 값을 반환해준다. 코드 1 function solution(n, k) { let answer = 0; const num = n.toString(k).split('0').filter((e) => { return e !== '1' ? ..

문제 설명 문제 풀이 방법 이 문제는 filter 메서드의 사용이 중요했던 문제였던것 같다. 첫번째로 참고한 코드는 filter메서드의 사용이 중요한 코드이다. 흐름을 보면 skill_trees에서 tree들을 걸러야 되므로 1차적으로 filter메서드를 사용, 그 다음에는 skill_trees들의 각 요소 별로 skill에 있는 맨 처음 글자가 먼저 오는 방식이기에 skill에 속한 글자들이 있는 문자를 includes를 이용해 첫번째 문자를 추출한 뒤 indexOf를 이용해 skill에서의 index값이 0인 요소를 모아 길이를 반환한다. 두번째 코드는 정규식으로 풀 수 있는 코드이며 흐름을 보자면 전체 skill_trees를 map메서드를 이용해 순회해주고 각 요소별 replace메서드를 정규식과 ..