본문 바로가기

공부/프로그래머스

[프로그래머스] 행렬의 덧셈

프로그래머스 문제

<행렬의 덧셈>

 

행렬의 덧셈 문제

행과 열의 크기가 같은 두 행렬 arr1, arr2를 더한 결과를 리턴해주는 문제이다. 

 

행렬의 덧셈 내 답변

answer이라는 리스트를 생성해서 그 안에 답변들을 넣어주어야한다는 생각에 answer에서 for문을 돌려서 리스트를 생성해주고 그에 맞춰서 더하고 append해주는 방식으로 선택을 했다. for문을 돌려서 각 리스트에 인덱스를 더해주었다. 

 

다른 사람들의 답변을 보니 한 줄로도 가능했다. 나의 문제점으로는 처음에 answer안에 새로운 리스트를 생성해주어야한다는 생각이 너무 강했던 것 같다. 위의 리스트를 사용하지않고 arr1에 더한 값을 다시 리턴해주는 방법도 있었다. 너무 사고에 틀을 주면 안될 것 같다.

각 자 나눠서 더하는 부분에서도 zip함수를 떠올리지 못했다. 항상 익숙한 것들만 사용해서 zip함수를 떠올리지못했는데 이러한 방법이 있는지 찾아보고 사용해야할 것 같다. zip 함수를 통해서 나누고 더하는 걸로 한 줄로도 해결할 수 있는 방법이 신기해서 추가해본다.

answer = [[c + d for c, d in zip(a, b)] for a, b in zip(A,B)]