⌨️ 프로그래머스 49

[프로그래머스] 배열 뒤집기 🔙

문제 정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요. 해결 과정 두가지 방법으로 풀었다. 첫번째는 for문을 이용해서 두번째는 reverse 함수를 이용해서 풀었다. 👆🏻 for문을 이용한 해결 우선 답을 작성할 배열을 하나 만든다. for문을 이용하여 작성한다. 여기서 for문을 작성할 때 변형이 필요하다. 변형이 필요하다는게 무슨말이냐? 배열을 뒤집기 위한 변형이다. for(let i = num_list.length-1; i >= 0; i--) 변수 선언문(할당문)은 i = num_list.length -1을 했다. 왜 num_list.length -1을 했을까? 🤔 그 이유는..

[프로그래머스] 아이스 아메리카노 ☕

문제 머쓱이는 추운 날에도 아이스 아메리카노만 마십니다. 아이스 아메리카노는 한잔에 5,500원입니다. 머쓱이가 가지고 있는 돈 money가 매개변수로 주어질 때, 머쓱이가 최대로 마실 수 있는 아메리카노의 잔 수와 남는 돈을 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요. 해결 과정 1. 아이스아메리카노 가격의 변수를 만들었다. 2. 아이스 아메리카노가 몇잔이 나오는지 돈과 아이스 아메리카노 가격을 통해 만들었다. 3. 잔돈을 머쓱이가 가지고 있는 돈 에서 아이스아메리카노 잔 수 * 아이스 아메리카노 가격을 빼주었다. 아이스 아메리카노 잔 수에서 Math.floor 함수를 작성한 이유는 소수점을 없애기 위해서이다. 그리고 아이스아메리카노 배열을 만들어 아이스 아메리카노 잔..

[프로그래머스] 옷가게 할인 받기 👕👖

문제 머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다.구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요. 해결 과정 전체 가격 변수를 만들었다. let totalPrice를 만들어 퍼센트 할인 공식을 넣어 할인된 가격이 출력되게 했다. 할인(%) 공신 만들기 가격 - (가격 * 할인 퍼센트) = 할인된 가격 function solution(price) { let totalPrice = 0; if(price >= 500000) { totalPrice = price - (price * 0.2); } else if(price >= 300000) { totalPrice = ..

[프로그래머스] 배열의 평균값

문제 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요. 해결 과정 1. 배열의 합을 구한다. 2. 배열의 길이로 나눈다. 새롭게 알게된 점📝 배열의 합을 어떻게 구해야하나 구글링을 하여 문제를 해결했다. 참고했던 사이트: https://sentry.io/answers/how-to-find-the-sum-of-an-array-of-numbers/ How to find the sum of an array of numbers The Problem You want to find the sum of an array of numbers. How do you do this with JavaScript? The Solution Th..

[프로그래머스] 피자 나눠 먹기(3) 🍕

문제 머쓱이네 피자가게는 피자를 두 조각에서 열 조각까지 원하는 조각 수로 잘라줍니다. 피자 조각 수 slice와 피자를 먹는 사람의 수 n이 매개변수로 주어질 때, n명의 사람이 최소 한 조각 이상 피자를 먹으려면 최소 몇 판의 피자를 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. 해결 과정 이건 피자나눠먹기(1)문제와 유사하다. 그래서 쉽게 해결할 수 있었다. 정답 function solution(slice, n) { var answer = 0; let pizzaCnt = n / slice; return Math.ceil(pizzaCnt); } 7m

[프로그래머스] 피자 나눠먹기(2) 🍕

문제 머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. 해결 과정 이 문제를 처음봤을때 생각보다 어렵게 생각했다. 그래서 시간이 많이 걸렸다. 문제는 이해갔지만 어떻게 풀지 막막해서 구글링을 해보고 다른 문제를 다 푼다음 다시 풀어봤다. 피자 변수를 만들었다. 피자 조각은 1조각 부터 시작함으로 let pizza = 1;로 작성했다. while문을 사용한 이유는 if문이 참일 경우 실행시키기 위해서 작성했다. if 문 안에 pizza * 6조각 그리고 사람 수로 나눠 떨어지면 피자가..

[프로그래머스] 피자 나눠 먹기(1) 🍕

문제 머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요. 해결 과정 처음에는 1. 피자 변수를 만든다. 2. 피자를 7조각으로 나눈다. 이런 식으로 접근을 했다. 다시 문제를 읽어보고 입출력 예 설명을 읽었다. 7명은 최소 1판 필요 1명은 최소 1판 필요 15명은 최소 3판 필요 24명일땐 최소 4판 필요 옆 사진 처럼 나눗셈을 이용해서 하면 소수점이 나온다. 8 % 7 = 1.xxx 소수점을 올려서 문제를 풀어보기로 했다. 소수점을 올릴때는 Math.ceil()을 이용한다. 소수점을 올리기위해서는 나누기할당을 이용해야한다. 그래서 아래..

[프로그래머스] 중앙값 구하기

문제 중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요. 해결 과정 1. 배열이 임의로 주어질 수 있으니 정렬을 먼저한다. 자바스크립트의 함수 기능 중 .sort()를 통해서 정렬할 수 있으나 아직 입문 단계이기에 다른 방법으로 해결해보려 한다. 그렇다면 정렬을 하기 위해서 어떻게 해야할까? 1.1. 배열 중에서 최소 값을 찾는다. let minNum = 1000; let cnt = 0; while() { cnt = cnt + 1; } // 배열의 순서를 증가 시키기 위해 반복문을 활용한다..

728x90