반응형
풀이
우선, 내적이 뭔지 검색해봤는데 바로 껐다^^호헤호ㅔ허허ㅔㅎ
입출력 예를 보면
첫번째 배열의 첫번째 두번째 배열의 첫번째를 곱한 값과
첫번째 배열의 두번째 두번째 배열의 두번째를 곱한 값을 더하는걸 반복한다.
따라서,
function solution(a, b) {
var answer = 1234567890;
var myArr = [];
for(let i=0; i<a.length; i++) {
for(let j=0; j<b.length; j++) {
if(i==j) {
myArr.push(a[i]*b[j]);
}
}
}
answer = myArr.reduce((a,b) => (a+b));
return answer;
}
두개의 배열을 전부 곱하는 대신 i와 j가 같을 때만 push 후 reduce를 통해서 배열의 값을 전부 더했다.
지금보니까 좀 멀리 돌아온거 같은데..
다른 사람 풀이를 보자
function solution(a, b) {
return a.reduce((acc, _, i) => acc += a[i] * b[i], 0);
}
arr.reduce(callback[, initialValue])
callback 함수에 accumulator, currentValue, currentIndexOptional, array Optional을 사용할 수 있다...
MDN이 최고다 증말루..
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
풀이 2.
function solution(a, b) {
var sum = 0;
for(var i=0; i<a.length; i++){
sum += a[i]*b[i];
}
return sum;
}
아.. 어쩐지..... 뭐한거지 ............................
복잡하게 생각하지 말자ㅏㅏㅏㅏ!!
반응형
'Dev > Algorithm' 카테고리의 다른 글
알고리즘 문제 | 프로그래머스 | JS - 완주하지 못한 선수 (0) | 2021.06.23 |
---|---|
알고리즘 문제 | 프로그래머스 | JS - 제일 작은 수 제거하기 (0) | 2021.06.23 |
알고리즘 문제 | 프로그래머스 | JS - 두 개 뽑아서 더하기 (0) | 2021.06.23 |
알고리즘 문제 | 프로그래머스 - 크레인 인형뽑기 게임 (0) | 2021.01.25 |
알고리즘 문제 | 프로그래머스 - K번째 수 (0) | 2021.01.21 |