728x90
https://programmers.co.kr/learn/courses/30/lessons/76501
function solution(absolutes, signs) {
var answer = 123456789;
// 합을 담을 변수
let sum = 0;
// for loop으로 absolutes 길이만큼 돌린다
for(let i=0; i<absolutes.length; ++i){
// signs의 값이 true면
if(signs[i] === true){
// absolutes에 들어있는 값을 그냥 더해준다.
sum += absolutes[i];
// 만약 false면
}else{
// 값에 -1을 곱하고
absolutes[i] *= -1
// sum에 추가해준다
sum += absolutes[i];
}
}
//정답
answer = sum
return answer;
}
코드가 주구장창 늘어났지만, 단순하게 풀어냈다.
정답코드는 reduce를 사용해서 풀어냈다.
function solution(absolutes, signs) {
return absolutes.reduce((acc, val, i) => acc + (val * (signs[i] ? 1 : -1)), 0);
}
728x90
'알고리즘' 카테고리의 다른 글
프로그래머스 Level 1 -부족한 금액 계산하기(Javascript) (0) | 2022.05.13 |
---|---|
피보나치 수열 - 자바스크립트 for loop 사용, 재귀함수x (0) | 2022.05.13 |
프로그래머스 Level 1 -없는 숫자 더하기(Javascript) (0) | 2022.05.13 |
프로그래머스 Level 1 -문자열을 정수로 바꾸기(Javascript) (0) | 2022.05.13 |
프로그래머스 Level 1 -가운데 글자 가져오기(Javascript) (1) | 2022.05.13 |