전체 글 184

Q. 행렬의 덧셈

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 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) { let result = []; for (let i = 0; i < arr1.length; i++) { let new_arr = []; for (let..

Q. 핸드폰 번호 가리기

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 🚫제한 사항 phone_number는 길이 4 이상, 20이하인 문자열입니다. ❗입출력 예 phone_number return "01033334444" "*******4444" "027778888" "*****8888" 😀 내가 푼 답 function solution(phone_number) { return ( phone_number.slice(0, -4).replace(/[0-9]/g, "*") + phone_number.slice..

Q. 평균 구하기

정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 🚫제한 사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. ❗입출력 예 arr return [1, 2, 3, 4] 2.5 [5, 5] 5 😀 내가 푼 답 function solution(arr) { let sum = 0; arr.forEach((num) => (sum += num)); return sum / arr.length; } 😊 문제풀이 답안 OR 다른사람들 답안 function average(array){ return array.reduce((a,b) => a+b) / array.length; }

Q. 음양 더하기

어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. 🚫제한 사항 absolutes의 길이는 1 이상 1,000 이하입니다. absolutes의 모든 수는 각각 1 이상 1,000 이하입니다. signs의 길이는 absolutes의 길이와 같습니다. signs[i] 가 참이면 absolutes[i] 의 실제 정수가 양수임을, 그렇지 않으면 음수임을 의미합니다. ❗입출력 예 number signs result [4, 7, 12] [true, false, true] 9 [1, 2, 3] [false, fas..

Q. 없는 숫자 더하기

0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 🚫제한 사항 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 원소 ≤ 9 numbers의 모든 원소는 서로 다릅니다. ❗입출력 예 number result [1, 2, 3, 4, 6, 7,8, 0] 14 [5, 8, 4, 0, 6, 7, 9] 6 😀 내가 푼 답 function solution(numbers) { let sum = 0; for (let i = 0; i cur + acc, 0); } // reduce 다른 버전 function solution(numbe..

Q. 문자열을 정수로 바꾸기

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 🚫제한 사항 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니다. s는 "0"으로 시작하지 않습니다. ❗입출력 예 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. 😀 내가 푼 답 function solution(s) { return Number(s); } 😊 문제풀이 답안 OR 다른사람들 답안 function strToInt(str){ return str/1 }

Q. 두 정수 사이의 합

두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 🚫제한 사항 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. ❗입출력 예 a b return 3 5 12 3 3 3 5 3 12 😀 내가 푼 답 function solution(a, b) { let num = 0; for (let i = Math.min(a, b); i b){ answer = gaussSum(a) - gaussSum(b-1) }else if(a < b){ ..

Q. 가운데 글자 가져오기

단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 🚫제한 사항 s는 길이가 1 이상, 100이하인 스트링입니다. ❗입출력 예 s return "abcde" "c" "qwer" "we" 😀 내가 푼 답 function solution(s) { return s.length % 2 !== 0 ? s[Math.floor(s.length / 2)] : s[s.length / 2 - 1] + s[s.length / 2]; } 😊 문제풀이 답안 OR 다른사람들 답안 // ceil() function solution(s) { return s.substr(Math.ceil(s.length / 2) - 1, s.length % 2 === 0..

Q. 짝수와 홀수

정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 🚫제한 사항 num은 int 범위의 정수입니다. 0은 짝수입니다. ❗입출력 예 num return 3 "Odd" 4 "Even" 😀 내가 푼 답 function solution(num) { return num % 2 === 0 ? "Even" : "Odd"; } 😊 문제풀이 답안 OR 다른사람들 답안 function evenOrOdd(num) { var result = '' if(num%2 === 0){ result = 'Even'; }else{ result = 'Odd'; } return result }

Q. 직사각형 별찍기

이 문제에는 표준 입력으로 두개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요 🚫제한 사항 n과 m은 각각 1000 이하인 자연수 입니다. ❗입출력 예 입력 - 5 3 출력 ***** ***** ***** 😀 내가 푼 답 process.stdin.setEncoding("utf8"); process.stdin.on("data", (data) => { const n = data.split(" "); const a = Number(n[0]), b = Number(n[1]); const star = "*".repeat(a); for (let i = 0; i < b; i++) { console.log(star); } }); 😊 문제풀이 답..