728x90
반응형

코딩테스트 연습 2

프로그래머스 - Level 2. 피로도 / JavaScript (js)

문제설명 문제분석 모든 던전에는 최소 필요 피로도와 소모 피로도가 존재한다. 최소 필요 피로도보다 현재 남아있는 피로도가 적다면, 해당 던전을 탐색할 수 없다. 당연히 소모 피로도보다 현재 남아있는 피로도가 더 높아야 하며, 가장 효율적으로 많은 던전을 탐색하기 위한 방법을 찾는 문제이다. 말이 조금 어려운 거 같아서 풀어보자면 다음과 같다. 모든 던전에는 [최소 필요 피로도, 소모 피로도]가 존재한다. 모든 던전을 순차적으로 탐색할 때, 가장 많은 던전을 탐색할 수 있어야 한다. 각 던전에 방문하는 모든 경우의 수 중에서, 가장 많은 던전을 탐색하는 경우를 찾는다. 이때 방문할 수 있는 가장 많은 던전의 수가 정답이다. 문제를 단순화 했으니 이해하기 쉽게 코드를 짜보자. 이해하기 쉽게 코드작성하기 fu..

카테고리 없음 2023.02.07

프로그래머스 - Level 1. 최소직사각형 / JavaScript (js)

문제설명 - 최소직사각형 문제분석 모든 명함에는 가로길이와 세로길이가 존재하며, 가로 또는 세로의 길이가 각각 가장 긴 명함의 변을 구해 가장 작은 지갑의 면적을 리턴하는 문제이다. 말이 조금 어려운 거 같아서 풀어보자면 다음과 같다. 모든 명함에는 가로길이와 세로길이가 있다. 일반적인 명한은 가로 길이가 더 길지만, 간혹 세로길이가 더 긴 명함도 존재한다. 세로길이가 더 긴 명함을 옆으로 돌려서(세로길이와 가로길이를 스왑해서) 보관할 수 있다. 위 모든 경우를 포함하는 동시에, 입력된 모든 크기의 명함을 보관할 수 있는 가장 작은 지갑을 만들어야 한다. 결과값은 명함의 가장 긴 가로길이 x 가장 긴 세로길이여야 한다. (이때 3번이 이미 적용된 상태여야 한다.) 문제를 단순화 했으니 이해하기 쉽게 코드..

728x90
반응형