JavaScript 57

[프로그래머스] 행렬의 덧셈 - 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]] 💻 나의 코드 function solution(arr1, arr2) { var answer = []; for(let i=0; i

[프로그래머스] 핸드폰 번호 가리기 - Javascript (Lv.1)

📖 문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. ✔️ 제한조건 s는 길이 4 이상, 20 이하인 문자열입니다. phone_number return "01033334444" "*******4444" "027778888" "*****8888" 💻 나의 코드 function solution(phone_number) { var answer = ''; let len = phone_number.length; answer += '*'.repeat(len - 4) + phone_n..

[프로그래머스] 같은 숫자는 싫어 - Javascript (Lv.1)

📖 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. ✔️ 제한조건 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다..

[프로그래머스] 폰켓몬 - Javascript (Lv.1)

📖 문제 설명 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습니다. 첫 번째(3번), 두 번째(1번) 폰켓몬을 선택 첫 번째(3번), 세 번째(2번) 폰켓몬을 선택..

[프로그래머스] 하샤드 수 - Javascript (Lv.1)

📖 문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. ✔️ 제한조건 x는 1 이상, 10000 이하인 정수입니다. arr return 10 true 12 true 11 false 13 false 💻 나의 코드 function solution(x) { var answer = true; let arr = String(x).split(''); let num = arr.reduce((a, b) => Number(a) + Number(b)); if(x % num != 0){ re..

[프로그래머스] 정수 제곱근 판별 - Javascript (Lv.1)

📖 문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. ✔️ 제한조건 n은 1이상, 50000000000000 이하인 양의 정수입니다. n return 121 144 3 -1 📕 입출력 예 설명 입출력 예#1 121은 양의 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합니다. 입출력 예#2 3은 양의 정수의 제곱이 아니므로, -1을 리턴합니다. 💻 나의 코드 function solution(n) { var answer = -1; let i = 1; while(true){ if(i**2 === n){ answer..

[프로그래머스] 소수 만들기 - Javascript (Lv.1)

📖 문제 설명 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성해주세요. ✔️ 제한조건 nums에 들어있는 숫자의 개수는 3개 이상 50개 이하입니다. nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않습니다. nums result [1, 2, 3, 4] 1 [1, 2, 7, 6, 4] 4 📕 입출력 예 설명 입출력 예 #1 [1,2,4]를 이용해서 7을 만들 수 있습니다. 입출력 예 #2 [1,2,4]를 이용해서 7을 만들 수 있습니다. [1,..

[프로그래머스] 최대공약수와 최소공배수 - Javascript (Lv.1)

📖 문제설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. ✔️ 제한조건 두 수는 1이상 1000000이하의 자연수입니다. n m return 3 12 [3, 12] 2 5 [1, 10] 💻 나의 코드 function solution(n, m) { let result1 = gcd(n, m); let result2 = lcm(n, m, result1); return [result1, result2]; } function gcd(a, b) { ret..

[프로그래머스] 자릿수 더하기 - Javascript (Lv.1)

📖 문제설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. ✔️ 제한조건 N의 범위 : 100,000,000 이하의 자연수 N answer 123 6 987 24 💻 나의 코드 function solution(n) { var answer = 0; let arr = String(n).split(''); answer = arr.reduce(function(a, b){ return Number(a) + Number(b); }, 0); return answer; } 🎤 코드 설명 입력받은 숫자 n을 문자열로 만든 후 split('')함수를 통해 배열로 바꿔준다. red..

[프로그래머스] 수박수박수박수박수박수? - Javascript (Lv.1)

📖 문제설명 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. ✔️ 제한조건 n은 길이 10,000이하인 자연수입니다. n return 3 "수박수" 4 "수박수박" 💻 나의 코드 function solution(n) { var answer = []; for(let i=1; i