규도자 개발 블로그
[프로그래머스/Level1/파이썬3(python3)] 행렬의 덧셈 본문
[프로그래머스/Level1/파이썬3(python3)] 행렬의 덧셈
문제
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한사항
- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
입출력 예
arr1 | arr2 | return |
---|---|---|
[[1,2],[2,3]] | [[3,4],[5,6]] | [[4,6],[7,9]] |
[[1],[2]] | [[3],[4]] | [[4],[6]] |
풀이
def solution(arr1, arr2):
for i, v in enumerate(arr1):
for i_i, i_v in enumerate(v):
arr1[i][i_i] = arr1[i][i_i] + arr2[i][i_i]
return arr1
설명
2차원 배열을 마음대로 탐색하고 다룰 수 있다면 어렵지 않게 풀 수 있는 문제이다. 조금 특이하게 접근한 점이 있다면 바로 arr1에 답을 담아서 리턴한 부분인데 이는 문제 지문에서 볼 수 있다시피 행과 열의 크기가 같은 행렬이 문제로 제시되기 때문인데 이렇게 하지 않으면, 파이썬에서는 없는 배열에 값을 넣으려고 할 때 예외처리가 발생하기 때문에 일일히 해당 배열을 선언해줘야 하므로 코드가 좀 더 난잡해져 이렇게 작성하였다.
'알고리즘 > 풀이' 카테고리의 다른 글
[프로그래머스/Level2/파이썬3(python3)] 탑 (0) | 2020.04.30 |
---|---|
[프로그래머스/Level1/파이썬3(python3)] x만큼 간격이 있는 n개의 숫자 (0) | 2020.04.29 |
[프로그래머스/Level1/파이썬3(python3)] 핸드폰 번호 가리기 (0) | 2020.04.27 |
[프로그래머스/Level1/파이썬3(python3)] 하샤드 수 (0) | 2020.04.26 |
[프로그래머스/Level1/파이썬3(python3)] 평균 구하기 (0) | 2020.04.25 |
Comments