목록프로그래머스 (4)
코딩쌀롱

문제 프로그래머스 소수 찾기 문제 input: 숫자로 이루어진 문자열 output: 숫자를 조합해서 만들 수 있는 소수 개수 네이스 풀이 분석 두 시간 안에 풀지 못해서 네이스 풀이를 분석했다. 코드 고마워요🙂 네이스 코드를 복사해서 vsc에서 디버깅하면서 공부했다. function solution(numbers) { const answer = new Set(); const visited = []; findPrime('', visited, answer, numbers); // N! * logN return answer.size; } function findPrime(prevSum, visited, answer, numbers) { if (visited.length === numbers.length) re..

문제 프로그래머스 모의고사 문제 input: 1번부터 마지막 문제까지 정답이 순서대로 들은 배열 answers output: 가장 많은 문제를 맞힌 사람이 누구인지 담음 배열 (여럿일 경우 오름차순) 나의 풀이 1, 2, 3번 학생들의 찍는 번호들을 담을 배열을 어떻게 저장할지 고민하다가 처음에는 2차원 배열로 저장했다. 코드를 모두 작성했을 때 지저분해보이고, forEach를 한 번 더 돌아야해서 각 학생들의 배열들을 따로 저장하는 것으로 수정했다. 그리고 메서드 체이닝을 많이 안 써봤는데 보기에 되게 좋은 것 같다! 자주 활용해봐야겠다.

문제 프로그래머스 크레인 인형뽑기 게임 문제 input: 1) 게임 화면의 격자 상태가 담긴 2차원 배열 board 2) 인형을 집기 위해 크레인을 작동시킬 위치가 담긴 배열 moves output: 크레인을 모두 작동시킨 후 터뜨려져 사라진 인형의 개수(number) 나의 풀이 한 달 전쯤 같은 문제를 풀었었는데 그 때는 이중 for문으로 풀었었다. 그래서 이번에는, 1. for문을 사용하지 않고 2. reduce를 사용해서 2차원 배열의 행, 열을 바꿔주는 함수도 직접 작성해보기로 했다. let board = [ [0, 0, 0, 0, 0] [0, 0, 1, 0, 3] [0, 2, 5, 0, 1] [4, 2, 4, 4, 2] [3, 5, 1, 3, 1] ]; 문제에서 input으로 주는 2차원 배열 ..

문제 프로그래머스 12981 영어 끝말잇기 문제 게임을 하는 사람 수 n, 순서대로 말한 단어들을 넣은 배열 words를 매개변수로 받는다. 단어의 첫 글자를 맞게 말했는지, 앞에 이미 나온 단어인지를 확인하고 틀린 사람의 번호와 몇 번째 차례일 때 그 단어를 이야기 했는지를 반환한다.[사람 번호, 차례] 아무도 틀리지 않았다면 [0, 0]을 반환한다. 나의 풀이 data = [ [ 사람1 ], [ 사람2 ], ...[ 사람n ] ] 2차원 배열로 만들어서 words의 단어들을 차례대로 사람들의 배열에 넣어가면서 체크. 1. 사람 수(n)만큼 data에 속배열을 만든다. 2. 속배열에 돌아가면서 단어 넣기 2-1 앞글자를 맞게 했는지 체크 (전 배열의 마지막 글자, 제일 앞 글자 비교) 2-2 이전에 안..