반응형
function solution(x, n) {
let answer = [];
for(let i = 0; i < n; i++)
{
answer.push(x*(i+1));
}
return answer;
}
로직 생각 :
정수 x = x 부터 시작해 x 씩 증가 시킴
자연수 n = 우리가 반복할 숫자
for 문을 이용해 자연수 n 까지 반복을 돌리고,
answer 리스트에 push를 이용해 x * ( i + 1) 을 리턴해줌
x * (i + 1) 은 i 가 0 일때 1 * x 가 되기 때문에 첫번째 x 부터
마지막 n - 1 까지 반복을 돌리기 때문에 x * (n - 1 + 1) 로 n*x 가 나오게 되므로 x 부터 시작해 x씩 증가하는 숫자 n 개를 리스트에 push를 이용하여 넣어줄 수 있다.
다른사람의 코드
function solution(x, n) {
return Array(n).fill(x).map((v, i) => (i + 1) * v)
}
분석을 해보자면 리스트로 반환을 하기 때문에 Array 객체 배열에 fill() 함수를 이용해 x로 n개의 리스트 요소를 넣어준다.
그 후 map((v, i) => (i + 1) * v) / map 메서드와 콜백함수를 이용하여 v, 는 요소 i는 인덱스로 map 을 콜백함수를 이용하여 리스트의 i 번째 인덱스 값을 (i+1) + v(현재 리스트의 값)으로 바꾸어 주어 채워주고 있다.
반응형
'프로그래머스 > LV1' 카테고리의 다른 글
프로그래머스 LV1 - 문자열 내 p와 y의 개수 (0) | 2023.07.13 |
---|---|
프로그래머스 LV1 - 약수의 합 (0) | 2023.07.07 |