# 아주 일반적인 코드
def solution(arr1, arr2):
ln1, ln2 = len(arr1), len(arr1[0])
li = [[0 for i in range(ln2)] for i in range(ln1)]
for i in range(ln1):
for j in range(ln2):
li[i][j] = arr1[i][j] + arr2[i][j]
return li
# zip, map 메서드를 사용한 코드
def solution(A,B):
return [list(map(sum, zip(*i))) for i in zip(A, B)]
solution([[1,2],[2,3]] , [[3,4],[5,6]])
# =========================================================
# 우선 zip(A,B)을 해서 나온 i는
# [([1, 2], [3, 4]), ([2, 3], [5, 6])]
# 각 2차원 배열의 첫 행을 가져오게 된다.
# 그리고 zip(*i)하게 되면 ([1, 2], [3, 4]) 가 [1,2],[3,4] 로 분리되고
# map과 sum을 이용해 각 요소를 더하게 된다.