본문 바로가기

CS3

[코딩테스트 연습] 프로그래머스 - 구명보트 (js 풀이, 접근방법, 정답코드) 문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42885# 코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 1. 문제 접근방법 중량을 기준으로 오름차순 정렬 후, 투포인터로 탐색범위를 좁혀 답을 도출합니다. 2. 발생케이스 1) 최소중량 + 최대중량 제한중량 : 2명이 탈 수없기에, 최대중량(1명)만 태워 보냅니다. 3. 구현 function solution(people, limit) { let answer = 0; let .. 2021. 7. 24.
[ 2차원 배열 ] 2차원 배열을 공부하고, 문제 풀어보기 (+ 행과 열 바꾸기) 공부하게 된 이유? 2차원 배열 활용 문제를 풀면서, 기본 개념에 부족함을 느껴, 보완하고자 본 포스팅을 작성하게 되었습니다. 1. 정의 한줄정리: 2차원 배열은 1차원 배열을 원소로 가진 배열입니다. 이차원 배열의 원소는 각각의 행입니다. 따라서, 이차원배열의 길이는 row의 수와 동일합니다. 이차원 배열의 원소(=일차원배열)의 길이는 각 행의 열입니다. // javascript로 작성된 코드입니다 let arr = [[1, 0, 0, 1], [0, 0, 0, 1], [1, 1, 1, 1], [0, 0, 0, 1]]; let row = arr.length; let column = arr[0].length; 위의 코드에서 row는 arr.length인 총 4개, column은 arr[0].length인 .. 2021. 7. 6.
[ switch문 ] 다양한 케이스를 처리할 수 있는, switch문 정리 공부하게 된 이유? 이전에 배웠는데, 실제로 활용하려고 하니 헷갈리는 부분이 있어, 부족한 부분을 보완하려고 본 포스팅을 작성하게 됐습니다. if else로 케이스를 나누기엔 처리해야 할 케이스가 많을 경우, switch문을 이용할 수 있습니다. 계산기를 생각해봅시다. 계산기는 + - * / % 등 각 연산자에 따라 다양한 케이스를 처리해야하는데, if else를 쓸 경우 // javascript로 작성된 코드입니다. if (command === "+") { // 더하기 } else if (command === "-") { // 빼기 } else if (command === "*") { // 곱하기 } else if (command === "/") { // 나누기 } else if (command ===.. 2021. 7. 5.