행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
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):
answer = [[]]
arr_temp = []
for i, j in zip(arr1, arr2):
for k in range(len(i)):
arr_temp.append(i[k] + j[k])
answer.append(arr_temp)
arr_temp = []
answer.pop(0)
return answer
원래는 위에서 temp 리스트를 초기화 해주고 밑에서 for문을 돌리면서 다시 초기화 해주면 된다고 생각했다. 하지만 이렇게 되면 같은 코드가 중복되기 때문에 코드 효율성 측에서 문제가 된다.
def solution(arr1, arr2):
answer = [[]]
for i, j in zip(arr1, arr2):
arr_temp = []
for k in range(len(i)):
arr_temp.append(i[k] + j[k])
answer.append(arr_temp)
answer.pop(0)
return answer
이렇게 수정해주면 리스트를 초기화 해주는 코드를 위랑 for문 안에서 중복되지 않아도 된다.