https://programmers.co.kr/learn/courses/30/lessons/76501
음수 양수 더해보자
function solution(absolutes, signs) {
// sum에 모으기 위해 0을 할당
let sum = 0;
while (signs.length){
// signs에서 하나씩 꺼내기 위해 pop()
// shift()(=시간복잡도 O(n))보다는 pop()(=시간복잡도 O(n))
let bool = signs.pop()
if (bool){
sum += absolutes.pop()
}else {
sum -= absolutes.pop()
}
}
return sum
}
프로그래머스에 나온 한줄짜리 답
function solution(absolutes, signs) {
// acc: accumulator
// val: current value
// i: current index
// reduce(callback, initial value)
return absolutes.reduce((acc, val, i)=>acc+(val * (signs[i] ? 1:-1)),0)
}
arr.reduce()에 관한 자료
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce