본문 바로가기

프로그래머스 - Lv.1 두 정수 사이의 합 본문

개발/algorithm

프로그래머스 - Lv.1 두 정수 사이의 합

자전하는명왕성 2023. 1. 17. 23:50

두 정수 사이의 합을 구하는 문제이다.

해당 문제를 풀이하기 위해 활용한 메서드 : new Array(length) / fill / map / reduce

문제 설명

 

풀이 방식

function solution(a, b) {
  let arr = new Array(Math.abs(b-a)+1)	
  .fill(a<b?a:b).map((x,i)=>x+i)		
  										
  return arr.reduce((q,w)=>{			
    return q+w
  })
}

// 1. new Array의 길이로 Math(b-a)+1 만큼 설정
// 2. 해당 배열을 a,b 둘 중 작은 값으로 채움
// 3. 채워진 값마다 1씩 증가시켜 map으로 리턴
// 4. 배열 안에 채워진 값을 reduce를 통해 누산시켜 반환

보다 쉬운 풀이 방법도 있겠지만, reduce 메서드를 써보고 싶었다.

Comments