https://programmers.co.kr/learn/courses/30/lessons/12950?language=python3
문제 설명
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 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]] |
문제 풀이
2차원 리스트를 파이썬으로 다루려니 생소하였다.
(처음엔 비어있는 answer 2차원 배열을 어떻게 생성하고 확장하는지 찾아봤음)
다른 풀이도 꾸준히 찾아보며 공부하기!
새로 배운 내장함수: zip(*iterable)
solution.py
나의 풀이
def solution(arr1, arr2):
for i in range(len(arr1)): # 행
for j in range(len(arr1[0])): # 열
arr1[i][j] += arr2[i][j]
return arr1
다른 풀이
def solution(arr1, arr2):
answer = [[c + d for c, d in zip(a, b)] for a, b in zip(arr1,arr2)]
return answer
출처: https://programmers.co.kr/learn/courses/30/lessons/12950/solution_groups?language=python3
'알고리즘 문제풀이 > 문제풀이' 카테고리의 다른 글
[python] 프로그래머스 Level.1 최대공약수와 최소공배수 (0) | 2020.04.24 |
---|---|
[python] 프로그래머스 Level.1 핸드폰 번호 가리기 (0) | 2020.04.20 |
[python] 프로그래머스 Level.1 x만큼 간격이 있는 n개의 숫자 (0) | 2020.04.18 |
[python] 프로그래머스 Level.1 직사각형 별찍기 (0) | 2020.04.17 |
[c++] 프로그래머스: 힙(Heap) / 이중우선순위큐 (0) | 2020.04.15 |