치악산 복숭아
[프로그래머스] 행렬의 덧셈 - Javascript 본문
링크
programmers.co.kr/learn/courses/30/lessons/12950
코딩테스트 연습 - 행렬의 덧셈
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요
programmers.co.kr
문제 설명
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건
- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
문제 풀이
1) 코드 설명
(1) 2차원 배열을 생성하고 주어진 두 배열의 값을 더해서 해당하는 위치에 삽입한다.
2) 코드
function solution(arr1, arr2) {
var answer = new Array();
for(var i = 0; i<arr1.length; i++) {
answer[i] = new Array();
for(var j = 0; j<arr1[i].length; j++)
answer[i][j] = arr1[i][j] + arr2[i][j];
}
return answer;
}
수정한 코드
//0624
function solution(arr1, arr2) {
for(var i = 0; i < arr1.length; i++) {
for(var j = 0; j < arr1[i].length; j++)
arr1[i][j] += arr2[i][j];
}
return arr1;
}
function solution(arr1, arr2) {
let test = arr1.map((item, i) => item.map((item2, j) => item2+arr2[i][j]));
return test;
}
나도 이 문제 한줄로 풀고싶어서 map 공부했다...!
근데 의외로 이중 for문과 map 걸린 시간이 별로 차이가 안났다. 음... 🤨
'PS:0' 카테고리의 다른 글
[프로그래머스] 예산 - Javascript (0) | 2020.09.16 |
---|---|
[프로그래머스] x만큼 간격이 있는 n개의 숫자 - C++ / Javascript (0) | 2020.09.16 |
[프로그래머스] 하샤드 수 - Javascript (0) | 2020.09.16 |
[프로그래머스] 최대공약수와 최소공배수 - Javascript (0) | 2020.09.16 |
[프로그래머스] 키패드 누르기 - Javascript (2) | 2020.09.16 |
Comments