[javascript-algorithm] 프로그래머스 - x만큼 간격이 있는 n개의 숫자
(1) 문제링크
https://programmers.co.kr/learn/courses/30/lessons/12954
(2) 문제풀이 및 해설 1
- 문제풀이
let x = 2;
let n = 5;
function solution(x, n) {
let answer = [];
for(var i = 1; i <= n; i++){
answer.push(x * i)
}
return answer;
}
console.log(solution(x, n)) // [2, 4, 6, 8, 10]
- 문제해설
- 빈 배열 answer을 만든다.
- for문을 이용하여 n만큼 반복하는 반복문을 만든다. 1부터 n까지 x에 곱져야하므로 조건은 i <= n 가 되고 그 후 push() 메서드를 사용하여 곱해진 값을 answer 배열의 워소로 넣어준다.
(2) 문제풀이 및 해설 2
- 문제풀이
let x = 2;
let n = 5;
function solution(x, n){
return Array(n).fill(x).map((v, i) => (i + 1) * v)
};
console.log(solution(x, n)) // [2, 4, 6, 8, 10]
- 문제해설
- Array 생성자 함수를 사용하여 배열을 생성한다. 이 때 매개변수로 n이 전달되었는데 Array 생성자 함수는 매개변수가 1개이고 이것이 숫자일 때 이 숫자를 length 값으로 가지는 배열을 생성한다. 그러므로 n 만큼의 length 값을 가지는 배열이 생성된다.
- 매개변수가 1개를 초과할 때는 전달 된 매개변수를 원소로 하는 배열을 생성한다.
- fill 메서드를 이용하여 Array 생성자 함수를 사용하여 만든 배열을 전달된 매개변수로 채운다.
- map 메서드는 배열내의 모든 요소에 해당 연산을 적용시켜 새로운 배열을 생성한다. 여기서 v는 요소값, i는 인덱스값이며 해당 연산을 적용한 새로운 배열이 생성된다.
(3) 참고자료
Author And Source
이 문제에 관하여([javascript-algorithm] 프로그래머스 - x만큼 간격이 있는 n개의 숫자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@y_jem/알고리즘-프로그래머스-x만큼-간격이-있는-n개의-숫자저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)