본문 바로가기
문제풀이/프로그래머스

X만큼 간격이 있는 N개의 숫자

by dev_kong 2021. 11. 21.
728x90
728x90

문제 설명

함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.

  • x는 -10000000 이상, 10000000 이하인 정수입니다.
  • n은 1000 이하인 자연수입니다.

풀이방법

음 그냥 n 만큼 for반복문 돌려서 x랑 i랑 곱해주면 되겠네 싶었음. 

 

function solution(x, n) {
    let answer = []
    for(let i=1; i<n+1; i++){
        answer.push(x*i)
   }
   return answer;
}

 

 

나름 가독성도 좋고 만족스럽다.

근데 다른 사람 풀이 보니까 Array.from을 이용해서 푼게 있다.

Array.from........어제 우리집 시니어 개발자한테 배웠는데,

기억이 안난다.

 

 Array.from({ length: length }, (value, index) => {})

 

다시 물어봤다.

물론 혼났다.

length 로 배열의 길이를 정해준다.

그러면 길이가 n인 배열이 만들어지고 안에는 undefined 로 채워진다.

함수를 이용해 배열안의 값들을 할당 해주면 된다.

 

 

function getNumbers(x, n) {
  return Array.from({ length: n }, (value, index) => {x*(index + 1)});
}

console.log(getNumbers(8, 5)); // [8, 16, 24, 32, 40]

 

 

Array.from을 이용해 다시 풀어봤다.

코드가 단순 명료해서 가독성도 더 좋아진거 같다.

 

후기

Array_APIs 더 자세히 봐야지....

728x90
728x90

'문제풀이 > 프로그래머스' 카테고리의 다른 글

정수 내림차순으로 배치하기  (0) 2021.11.22
나누어 떨어지는 숫자 배열  (0) 2021.11.22
서울에서 김서방 찾기  (0) 2021.11.22
로또 최고순위 최저순위  (0) 2021.11.22
콜라츠 추측  (0) 2021.11.21

댓글