베스트 앨범
·
CS/코딩 테스트
코딩 테스트 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 접근)가장 많이 재생된 장르, 장르 내에서 많이 재생된 노래, genres(장르)와 plays(재생된 횟수)의 길이가 같으며 1~10^4이므로 10^4 * 10^4 = 10^8 이 되므로 시간복잡도는 O(N^2) 미만의 알고리즘으로 풀어야 합니다. 정답 및 해설정답function solution(genres, plays) { let answer = []; let genresMap = {}; // 장르 let playsMap = {}; // 노래 재생 횟수 // 장르별 총 재생 횟수와 각 곡의 재생 횟수 저..
의상
·
CS/코딩 테스트
문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 접근)최소 한가지 이상의 의상을 입고, 서로 다른 옷의 조합의 수를 return 하도록 되어있습니다.이 문구에서 의상이 무엇인지 보다는 의상의 타입의 갯수가 중요하다는 것을 알 수 있습니다. 그래서 해시맵을 이용하여, 의상 종류의 갯수가 몇개 인지 파악하는 방식으로 접근하면 됩니다. 정답 및 풀이정답function solution(clothes) { let answer = 1; const map = new Map(); for (let i = 0; i  풀이문제 접근법에서 의상이 무엇인지 보다 의상의 타입의 갯수를 파악하는게 ..
전화번호 목록
·
CS/코딩 테스트
코딩 테스트 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 접근)phone_book의 길이가 1~ 10^7 이므로 시간복잡도 O(N^2)미만의 알고리즘으로 해결해야합니다. (2중 for문 이상 사용 x) 정답 및 풀이정답 function solution(phone_book) { phone_book.sort(); return !phone_book.some((phone, idx) => phone_book[idx + 1]?.startsWith(phone))} 풀이phone_book을 sort() 정렬하면 인접한 숫자들끼리 가까운 위치에 놓이게 됩니다.ex) ["119", "9767422..
완주하지 못한 선수
·
CS/코딩 테스트
코딩 테스트 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 접근)마라톤 경기의 참여한 선수가 100,000명 이하이므로 시간복잡도 10^5이므로 10^8을 넘으면 안되므로 시간복잡도 O(N^2) 미만의 알고리즘으로 해결하면 됩니다. 즉, O(n log n), O(n), O(log n), O(1) 방식으로 해결하면 됩니다.Completion의 길이는 participant의 길이보다 1 작다라는 말은 한명만 완주하지 못한 선수가 나온다는 의미이므로 두개의 배열을 비교하는 로직으로 해결하면 됩니다.동명이인이 있을 수 있다라는 말은 해시맵을 이용한 방법으로 해결하기 어려울 수 있습니다. 해시맵은 동일..
폰켄몬
·
CS/코딩 테스트
코딩 테스트 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 제안사항은 아래와 같이 입력되어있습니다.nums는 폰켓몬의 종류 번호가 담긴 1차원 배열입니다.nums의 길이(N)는 1 이상 10,000 이하의 자연수이며, 항상 짝수로 주어집니다.폰켓몬의 종류 번호는 1 이상 200,000 이하의 자연수로 나타냅니다.가장 많은 종류의 폰켓몬을 선택하는 방법이 여러 가지인 경우에도, 선택할 수 있는 폰켓몬 종류 개수의 최댓값 하나만 return 하면 됩니다. 위 문제는 가장 많은 종류의 폰켓몬을 선택하는 방법을 찾는 문제입니다. 문제 접근)1. 다양한 폰켓몬 종류를 선택할 수 있는 최댓값을 구하는 것이므..