본문 바로가기

programmers

(42)
[programmers] Lv 1. JS - 없는 숫자 더하기 문제 설명 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 나의 문제 풀이 function solution(numbers) { let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]; arr = arr.filter((x) => !numbers.includes(x)); const result = arr.reduce((acc, cur) => acc + cur); return result; } 1. filter() : 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환 2. includes() : 배..
[programmers] Lv 1. JS - 부족한 금액 계산하기 문제 설명 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에는 300으로 요금이 인상됩니다. 놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지를 return 하도록 solution 함수를 완성하세요. 단, 금액이 부족하지 않으면 0을 return 하세요. 나의 문제 풀이 function solution(price, money, count) { let sum = 0; let answer = 0; for (let i = 0; i 0 ? answer : 0; }
[programmers] Lv 1. JS - 음양 더하기 문제 설명 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. 나의 문제 풀이 function solution(absolutes, signs) { let num = 0; for(let i = 0; i < absolutes.length; i++) { if (signs[i] === true) { num += absolutes[i]; } else { num -= absolutes[i]; } } return num; }
[programmers] Lv 1. JS - 하샤드 수 문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. 나의 문제 풀이 function solution(x) { let sum = 0; let num = x.toString().split(""); for (let i = 0; i < num.length; i++) { sum += Number(num[i]); } return x % sum ? false : true; } 1. toString() : 문자열을 반환 2. split() : String 객체를 지정한 구분자를 이용하여..
[programmers] Lv 1. JS - 정수 제곱근 판별 문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 나의 문제 풀이 function solution(n) { let num = Math.sqrt(n); if (Number.isInteger(num)) { return (num + 1) ** 2; } else { return -1; } } 1. Math.sqrt() : 숫자의 제곱근을 반환 2. Number.isInteger() : 주어진 값이 정수인지 판별
[programmers] Lv 1. JS - 약수의 합 문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 나의 문제 풀이 function solution(n) { let sum = 0; for (let i = 1; i
[programmers] Lv 1. JS - 삼총사 문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완성하세..
[programmers] Lv 1. JS - 자릿수 더하기 문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 나의 문제 풀이 function solution(n) { var answer = 0; n = n.toString(); for (let i = 0; i < n.length; i++) { answer += Number(n[i]); } return answer; } 1. toString() : 지정된 배열 및 그 요소를 나타내는 문자열을 반환 2. Number() : 새로운 Number 값을 생성 다른 사람 풀이 function solution(n) { return (n+"").split("").reduce((..