코딩테스트

TIL - 프로그래머스 연습문제 : 행렬의 덧셈

유기린 2022. 8. 5. 20:19

https://school.programmers.co.kr/learn/courses/30/lessons/12950

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제 설명

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.

제한 조건
  • 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.

이것저것 해봤는데 잘안되서 다른분들 답을 보고 리뷰했다.

 

 

 

row(행)과 column(열)이 있는 형태를 2차원 배열이라고 한다.

 

arr.length

row의 갯수를 구합니다.

 

이중배열이기 때문에 배열을 두번 풀어줘야한다.

첫번째 for문으로 배열 i개중 하나를 선택하고 

두번째 for문으로 선택된 배열[i] 안에서 j번째를 선택한다.

위치가 지정되어 지정된 위치의 arr1 + arr2의 숫자를 더해준다  

숫자를 변수 temp안에 넣어 배열로 만들어주고 

answer 안에넣어 이중 배열로 만들고 return

 

function solution(arr1, arr2) {
    let answer = [];
    for(let i=0; i<arr1.length; i++) {   
        let tmp = [];
        for(let j=0; j<arr1[i].length; j++) {		
            tmp.push(arr1[i][j]+arr2[i][j]);
        }
        answer.push(tmp)
    }
    return answer;
}

 

이중배열이기 때문에 배열을 두번 풀어줘야한다.

첫번째 for문으로 배열 i개중 하나를 선택하고 

두번째 for문으로 선택된 배열[i] 안에서 j번째를 선택한다.

위치가 지정되어 지정된 위치의 arr1 + arr2의 숫자를 더해준다  

숫자를 변수 temp안에 넣어 배열로 만들어주고 

answer 안에넣어 이중 배열로 만들고 return

 

 

 

 

 

 

 

 

참고자료 :

https://melonicedlatte.com/2021/03/14/181700.html

 

[Python] 두 리스트(배열) 각 요소들의 값 더하기 - Easy is Perfect

1. 원하는 동작 및 실제 동작 list1 = [1,1,1,1,1] list2 = [1,1,1,1,1] list1 + list2 # 원하는 result [2,2,2,2,2] # 실제 결과 [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] python 에서 두 리스트의 같은 인덱스에 있는 인자들의 값을 더해

melonicedlatte.com

https://velog.io/@pmk4236/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%ED%96%89%EB%A0%AC%EC%9D%98-%EB%8D%A7%EC%85%88-Javascript

 

[프로그래머스] 행렬의 덧셈 - Javascript

문제 링크행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완

velog.io

https://april.gitbook.io/learning-js/chapter-8./8.1

 

8.1 배열의 기초 - Learning JS

const arr2 = ["one", 2, "three"]; // 각기 다른 타입으로 구성된 배열 (책에서는 비균질적 배열이라고 표현) const arr3 = [[1, 2, 3], ["one", 2, "three"]]; // 배열을 포함한 배열 { name: "Fred", type: "object", luckyNumbers =

april.gitbook.io