728x90
*문제 출처는 프로그래머스에 있습니다.
문제 제목: 행렬의 곱셈 (2단계)
문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12949
나의 풀이
def solution(arr1, arr2):
answer = [[0 for _ in range(len(arr2[0]))] for _ in range(len(arr1))]
for i in range(len(arr1)):
for j in range(len(arr2[0])):
for k in range(len(arr1[0])):
answer[i][j] += (arr1[i][k] * arr2[k][j])
return answer
행렬의 기본적 곱셈 계산
이미치출처 : https://brunch.co.kr/@linecard/453
더보기
행렬의 곱을 리스트로 나타내기
모범답안
def productMatrix(A, B):
return [[sum(a*b for a, b in zip(A_row,B_col)) for B_col in zip(*B)] for A_row in A]
- 풀이는 위와 같으나 zip(* )을 사용해서 코드가 간단함
- zip(* ) : 행과 렬을 바꿔주는 역할
※ 알아야 할 것
- 풀이는 위와 같으나 zip(* )을 사용해서 코드가 간단함
- zip(* ) : 행과 렬을 바꿔주는 역할
728x90
'coding test - python > Programmers' 카테고리의 다른 글
Programmers / N개의 최소공배수 / Python 파이썬 (0) | 2022.05.05 |
---|---|
Programmers / JadenCase 문자열 만들기 / Python 파이썬 (0) | 2022.04.30 |
Programmers / 피보나치 수 / Python 파이썬 (0) | 2022.04.30 |
Programmers / 신규 아이디 추천 / Python 파이썬 (0) | 2022.04.29 |
Programmers / [1차] 비밀지도 / Python 파이썬 (0) | 2022.04.29 |