프로그래머스

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.1 행렬의 덧셈

문제 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 제한사항 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. 입출력 예 arr1 arr2 return [[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]] [[1],[2]] [[3],[4]] [[4],[6]] 내가 작성한 답안 이중 for문 사용하기 function solution(arr1, arr2) { let answer = []; for(let i = 0; i < arr1.length; i++) { let newArr = []; for(let ..

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.1 핸드폰 번호 가리기

문제 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해 주세요. 제한사항 phone_number는 길이 4 이상, 20이하인 문자열입니다. 입출력 예 phone_number return "01033334444" "*******4444" "027778888" "*****8888" 내가 작성한 답안 맨 처음 작성한 답안 (02/16) function solution(phone_number) { let answer = "" for(let i = 0; i < phone_number.length -..

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.0 합성수 찾기

문제 약수의 개수가 세 개 이상인 수를 합성수라고 합니다. 자연수 n이 매개변수로 주어질 때 n이하의 합성수의 개수를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ n ≤ 100 입출력 예 n result 10 5 15 8 입출력 예 #1 10 이하 합성수는 4, 6, 8, 9, 10 로 5개입니다. 따라서 5를 return합니다. 입출력 예 #2 15 이하 합성수는 4, 6, 8, 9, 10, 12, 14, 15 로 8개입니다. 따라서 8을 return합니다. 내가 작성한 답안 function solution(n) { // 1부터 n까지의 수를 배열에 담는다. let arr = []; for(let i = 1; i i+1) for(let i = 2; i el%i != 0 || ..

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.1 두 개 뽑아서 더하기

문제 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해 주세요. 제한사항 numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. 입출력 예 numbers result [2,1,3,4,1] [2,3,4,5,6,7] [5,0,2,7] [2,5,7,9,12] 입출력 예 #1 2 = 1 + 1 입니다. (1이 numbers에 두 개 있습니다.) 3 = 2 + 1 입니다. 4 = 1 + 3 입니다. 5 = 1 + 4 = 2 + 3 입니다. 6 = 2 + 4 입니다. 7 = 3 + 4 입니다. 따라서 [2,..

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.0 제곱수 판별하기

문제 어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return 하도록 solution 함수를 완성해 주세요. 제한사항 1 ≤ n ≤ 1,000,000 입출력 예 n result 144 1 976 2 입출력 예 #1 144는 12의 제곱이므로 제곱수입니다. 따라서 1을 return 합니다. 입출력 예 #2 976은 제곱수가 아닙니다. 따라서 2를 return 합니다. 내가 작성한 답안 function solution(n) { let arr = []; for(let i = 1; i

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.1 문자열 내 마음대로 정렬하기

문제 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. 제한사항 strings는 길이 1 이상, 50이하인 배열입니다. strings의 원소는 소문자 알파벳으로 이루어져 있습니다. strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 모든 strings의 원소의 길이는 n보다 큽니다. 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. 입출력 예 strings n result ["sun", "bed",..

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.1 최소직사각형

문제 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 명함 번호 가로 길이 세로 길이 1 60 50 2 30 70 3 60 30 4 80 40 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때의 지갑..

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.0 숫자 비교하기

문제 정수 num1과 num2가 매개변수로 주어집니다. 두 수가 같으면 1, 다르면 -1을 return하도록 solution 함수를 완성해 주세요. 제한사항 0 < num1 ≤ 10,000 0 < num2 ≤ 10,000 입출력 예 num1 num2 result 2 3 -1 11 11 1 7 99 -1 내가 작성한 답안 function solution(num1, num2) { var answer = 0; if(num1 !== num2){ answer = -1; }else{ answer = 1; } return answer; } 매개변수 값의 비교는 엄격한 동등 연산자인 일치 연산자(strict equality operator) '==='를 사용하였다. 일치 연산자는 자료형의 동등 여부까지 검사하기 때문에..

Front-End/Algorithm

[프로그래머스 / JavaScript] Lv.0 몫 구하기

문제 정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성해 주세요. 제한사항 0 < num1 ≤ 100 0 < num2 ≤ 100 입출력 예 num1 num2 result 10 5 2 7 2 3 내가 작성한 답안 function solution(num1, num2) { let answer = parseInt(num1 / num2); return answer; } 7 / 2 = 3.5의 경우처럼 몫이 정수가 아닌 값이 나올 수 있으므로 parseInt()를 이용해 실수를 정수형으로 변환하였다. parseInt()는 문자열 인자를 파싱하여 특정 진수의 정수를 반환한다. 다른 사람들이 작성한 답안 Math.floor function..

Etc.

[백준허브] 백준, 프로그래머스 문제 깃허브로 자동 커밋하기

백준, 프로그래머스 문제를 풀고 내 풀이를 수동으로 올려도 좋지만, 번거로울 수 있다. 그걸 자동으로 커밋해주는 프로그램이 있다면? 바로 백준허브다. 백준허브는 내가 푼 문제가 정답일 경우 해당 코드뿐만 아니라 성능과 메모리, 구체적으로 어떤 문제였는지 까지 같이 커밋한다. 백준허브 설정 방법은 아래와 같다. 1. 크롬 확장 프로그램 설치 먼저 크롬 웹스토어에서 백준허브 확장 프로그램을 설치한다. 다운로드 링크는 아래와 같다. https://bit.ly/3XR66UE 백준허브(BaekjoonHub) Automatically integrate your BOJ submissions to GitHub chrome.google.com 2. 깃허브 연동 설치가 완료되면 크롬 주소창 우측 퍼즐모양에서 해당 확장프로..

Olivia Kim
'프로그래머스' 태그의 글 목록 (2 Page)