반응형
2022.07.29 - [Coding Test/Go] - [프로그래머스] 내적 Go Code
2022.07.29 - [Coding Test/Python] - [프로그래머스] 내적 Python Code
2022.07.29 - [Coding Test/C++] - [프로그래머스] 내적 C++ Code
프로그래머스 내적을 JS로 풀어보겠다.
문제
Code
function solution(a, b) {
var answer = 0;
for(var i=0; i<a.length; i++){
answer += a[i]*b[i];
}
return answer;
}
무난하게 풀어봤는데 다른사람의 풀이를 보니 신기한 함수를 썼다.
function solution(a, b) {
return a.reduce((acc, _, i) => acc += a[i] * b[i], 0);
}
JS reduce
reduce는 4개의 인자를 가진다.
1. acc : 누산기
2. cur : 현재 값
3. idx : 현재 idx
4. src : 원본 배열
작동 방식은
reduce 함수의 반환값이 acc에 계속 더해져서 결과로 반환된다고 생각하면 쉽다.
결국 구현된 코드는
a의 길이만큼 for문을 돌며 i를 증가시키고
a[i] * b[i]를 sum 한 값을 반환한 것이다.
반응형
'Coding Test > JavaScript' 카테고리의 다른 글
[프로그래머스] 예산 JavaScript Code (0) | 2022.08.10 |
---|---|
[프로그래머스] 없는 숫자 더하기 JavaScript Code (2) | 2022.08.08 |
[프로그래머스] 소수 만들기 JavaScript Code (4) | 2022.08.04 |
[프로그래머스] 폰켓몬 Javascript Code (0) | 2022.07.29 |
[프로그래머스] 신고 결과 받기 JavaScript Code (0) | 2022.07.17 |
댓글