문제
함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.
- 제한 조건
- x는 -10000000 이상, 10000000 이하인 정수입니다.
- n은 1000 이하인 자연수입니다.
나의 풀이
function solution(x, n) {
// return 배열[x의 배수 n개]
// reduce. (1 < i <= n) * x 배열에 push
let arr = [];
for(let i = 1; i <= n; i++) {
arr.push(x * i);
}
return arr;
}
정확도 테스트 결과
다른 풀이
function solution(x, n) {
// 배열 x을 n개 채우기 -> 하나씩 배수로 변경
return Array(n).fill().map((e, i) => x * (i+1));
}
아예 없는 배열에 값을 채워넣어야 하니까 for문을 사용할 수 밖에 없었는데 이런 방법이 있었다.
먼저 Array()
로 배열을 생성
-> 배열이 비워있으면 메소드를 사용하기 까다로우니 fill()
을 적용해서 undefined
채우기
-> array.map()
으로 배수 채우기
정확도 테스트 결과
참고
'Coding test' 카테고리의 다른 글
[프로그래머스] 숫자 문자열과 영단어 (Level 1) (0) | 2022.04.18 |
---|---|
[프로그래머스] 2016년 (Level 1) (0) | 2022.04.16 |
[프로그래머스] 핸드폰 번호 가리기 (Level 1) (0) | 2022.04.16 |
[프로그래머스] 하샤드 수 (Level 1) (0) | 2022.04.16 |
[프로그래머스] 콜라츠 추측 (Level 1) (0) | 2022.04.16 |