문제
풀이
function solution(absolutes, signs) {
let nums = [];
absolutes.forEach((abs, idx) => {
let num = signs[idx] ? abs : -abs;
nums.push(num)
});
return nums.reduce((acc, num) => {
acc += num;
return acc;
}, 0)
}
- 2차 풀이 : 1차풀이의 두 과정을 하나로 합쳤다. 소모시간이 절반 가량 줄었다!
function solution(absolutes, signs) {
return absolutes.reduce((acc, num, idx) => {
acc += (signs[idx] ? num : -num)
return acc;
}, 0)
}
다른 풀이
function solution(absolutes, signs) {
return absolutes.reduce((acc, val, i) => acc + (val * (signs[i] ? 1 : -1)), 0);
}
function solution(absolutes, signs) {
let answer = 0;
for (let i = 0; i < absolutes.length; i++) {
signs[i] ? answer += absolutes[i] : answer -= absolutes[i]
}
return answer;
}