https://programmers.co.kr/learn/courses/30/lessons/12954?language=javascript
문제
함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.
제한 사항
- x는 -10000000 이상, 10000000 이하인 정수입니다.
- n은 1000 이하인 자연수입니다.
결괏값 예시
x | n | answer |
2 | 5 | [2,4,6,8,10] |
4 | 3 | [4,8,12] |
-4 | 2 | [-4, -8] |
기본 제공 틀
function solution(x, n) {
var answer = [];
return answer;
}
풀이 [JavaScript]
이번 문제는 간단히 정규식 for문을 사용하여 들어오는 값, x에 대해 n번째까지 돌면서 x에 n번째 값까지 곱한 값을 answer라는 배열에 푸쉬하여 리턴하는 형식으로 로직을 짜 보았습니다.
function solution(x, n) {
var answer = [];
for(var i = 1; i <= n; i++){
answer.push(x*i);
}
return answer;
}
다른 사람의 풀이 [JavaScript]
아래는 다른 사람의 풀이입니다.
function solution(x, n) {
return Array.from({length:n},(v,i)=>(i+1)*x);
}
이 Array.from은 나중에 유용하게 쓸 수 있을 것 같아 스터디 해보았습니다.
String 적용 Array.from
Array.from('cat');
//['c', 'a', 't']
Set 적용 Array.from
const set = new Set(['apple', 'banana', 'cat', 'banana']);
Array.from(set);
//['apple', 'banana', 'cat']
Map 적용 Array.from
const map = new Map([[1,2], [2,4], [4,8]]);
Array.from(map);
//[[1,2], [2,4], [4,8]]
const mapper = new Map([['1', 'a'], ['2', 'b']]);
Array.from(mapper.values());
//['a', 'b'];
Array.from(mapper.keys());
//['1', '2'];
Arrow function을 적용한 Array.from
Array.from([2, 4, 6], x => x + x);
//[4, 8, 12]
Array.from({length:3}, (v, i) => i);
//[0, 1, 2]
위의 Array.from 중 이 문제에 적용된 방식은 arrow function을 적용한 것인데요.
length는 배열의 길이를 가르키고, v는 아직 배열에서 undefined로 초기화되었기때문에 undefined 값입니다.
이 undefined값의 v로 배열은 length길이만큼 초기화가 되고, i=0 값 부터시작해서 배열에 할당된 길이만큼 v의 값이 채워지게 되는 것입니다.
채점 결과 [JavaScript]
'알고리즘 스터디 > 프로그래머스 스킬체크 레벨 1(끝)' 카테고리의 다른 글
[프로그래머스 스킬체크 레벨 1] 하샤드 수 문제 풀이 및 설명 - 자바스크립트[JavaScript] (0) | 2021.07.13 |
---|---|
[프로그래머스 스킬체크 레벨 1] 두 정수 사이의 합 문제 풀이 및 설명 - 자바스크립트[JavaScript] (0) | 2021.07.13 |
[프로그래머스 스킬체크 레벨 1] 수박수박수박수박수박수? 문제 풀이 및 설명 - 자바스크립트[JavaScript] (0) | 2021.07.13 |
[프로그래머스 스킬체크 레벨 1] 제일 작은 수 제거하기 문제 풀이 및 설명 - 자바스크립트[JAVASCRIPT] (0) | 2021.07.12 |
[프로그래머스 스킬체크 레벨 1] 짝수와 홀수 문제 풀이 및 설명 - 자바스크립트[JAVASCRIPT] (0) | 2021.07.12 |
댓글