[파이썬][프로그래머스] 행렬의 덧셈
1. 문제Permalink
[level 1] 행렬의 덧셈 - 12950Permalink
성능 요약Permalink
메모리: 22.9 MB, 시간: 31.47 ms
구분Permalink
코딩테스트 연습 > 연습문제
채점결과Permalink
정확성: 100.0
합계: 100.0 / 100.0
문제 설명Permalink
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건
- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
입출력 예
arr1 | arr2 | return |
---|---|---|
[[1,2],[2,3]] | [[3,4],[5,6]] | [[4,6],[7,9]] |
[[1],[2]] | [[3],[4]] | [[4],[6]] |
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
2. 해결방법 시간복잡도Permalink
- 브루트포스 O(N^2)
3. 문제 해결 및 코드Permalink
def solution(arr1, arr2): | |
result = [] | |
for i in range(len(arr1)): | |
result_sum = [] | |
for j in range(len(arr1[0])): | |
result_sum.append(arr1[i][j] + arr2[i][j]) | |
result.append(result_sum) | |
return result |
-
주석을 참고하면서 이해를 돕습니다.Permalink
4. 알고리즘 및 해설Permalink
- 리스트내 행과 열의 합을 계산하는 것이다.
- 이중 반복문을 통해 리스트마다 합을 담을 리스트를 만들어준다.
- 해당 리스트는 반복문이 돌때마다 초기화된다.
- 이중 반복문이 된 이후에 행렬의 합을 계산해서 리스트에 담고 상위 반복문이 종료될 때마다 결과 리스트에 넣는다.
- 최종 출력한다.