코린스토리

[Programmers]Level 1 행렬의 덧셈 파이썬 본문

Programmers Test/Level 1

[Programmers]Level 1 행렬의 덧셈 파이썬

정선웅 2019. 12. 28. 17:07

Python3 사용

 

문제

 

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

 

 

 

제한 조건

행렬 arr1 arr2의 행과 열의 길이는 500을 넘지 않습니다.

 

입출력 예

 

arr1 = [[1,2],[2,3]]

arr2 = [[3,4],[5,6]]

 

answer= [[4,6],[7,9]]

 

정답

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def solution(arr1, arr2):
 
   answer = []
 
for i in range(len(arr1)):
 
   tmp=[]
 
     for j in range(len(arr1[0])):
 
     tmp.append(arr1[i][j]+arr2[i][j])
 
 
return answer
 



사유과정

 

내가 파이썬 문법을 많이 까먹기는 했나보다. 처음에는 단순하게 answer[[]]로 선언해놓고

두번째 for문에서 append하는 형식이 아니라 answer[i][j]=arr1[i][j]+arr2[i][j]로 지정을 했다

당연히 오류가 났다.

 

빈 리스트에는 저렇게 바로 지정하는 것이 아니라 append나 insert를 사용하여서 요소를 추가할 수 있다.