[문제 바로가기]
[ 문제 파악 ]
2개의 배열이 따로 가지고 있는 데이터를 조합해서 합한 값 출력하기!
[ 적용한 풀이 ]
1. absolutes란 배열이 숫자들을 가지고 있고, signs가 음양에 대한 정보를 가지고 있었다.
2. 둘 다 같은 길이의 배열을 가지고 있어서 map으로 참/거짓만 구분하면 되는 sign을 숫자에 맞게 맵핑했다.
3. 맵핑한 데이터를 reduce 메소드로 합산을 했다.
function solution(absolutes, signs) {
let answer = signs.map((sign, idx) => {
return sign ? absolutes[idx] : -absolutes[idx]
}).reduce((a, b) => a + b, 0)
return answer;
}
[해결 과정 중 실수한 부분 / 잡담]
reduce를 잘 알아봐야겠다.
사실 합산할 때 빼고는 아직 이해를 잘 못했다.
reduce 파라미터 2개만 이용하는 법만 익혔는데
이름모를 고수는 3개를 가지고와서 풀더라 ㄷㄷ
[남의 풀이]
가장 좋아요가 많은 풀이를 가지고 와서 속도를 비교해보았다.
남의 풀이가 속도가 거의 균일하고 더 빨랐다.
[관련 문제 혹은 비슷한 문제]
댓글