Computer Science/알고리즘 문제풀이
[프로그래머스][python] 12950. 행렬의 덧셈
MLra
2021. 1. 7. 20:18
programmers.co.kr/learn/courses/30/lessons/12950
코딩테스트 연습 - 행렬의 덧셈
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요
programmers.co.kr
Question:
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한사항
- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
Example:
arr1 | arr2 | return |
[[1,2],[2,3]] | [[3,4],[5,6]] | [[4,6],[7,9]] |
[[1],[2]] | [[3],[4]] | [[4],[6]] |
My answer:
import numpy as np
def solution(arr1, arr2):
ndarr1=np.array(arr1)
ndarr2=np.array(arr2)
answer=ndarr1+ndarr2
return answer.tolist()
나는 일단 간단하게 numpy import해서 풀었다.
Reference answer:
def sumMatrix(A,B):
answer = [[c + d for c, d in zip(a, b)] for a, b in zip(A,B)]
return answer
이 코드는 A,B 행렬에 같은 자리에 상응하는 원소끼리 a,b에 넣고, 또 해당 쌍끼리 덧셈을 해서 행렬의 형식으로 반환해주는 코드다.