본문 바로가기
코딩 테스트/프로그래머스

행렬의 곱셈

by ornni 2024. 5. 15.
728x90
반응형

첫번째 코드

 

이전에 행렬을 다루는 방법을 배웠다!

"네모난 행렬을 어떻게 만들지?"가 아니라 "리스트 안에 리스트가 있다"라고 생각하는 편이 나한테는 더 편했다

 

오늘의 문제도 리스트 안에 있는 리스트 안에 어느 위치에 있는 원소들끼리 곱해지는 것인지에 대해서 차근차근 생각했다

그 결과 생각보다 어렵지 않게 차근차근 순서를 맞춰갔다

"너는 얘랑 곱해지고~ 몇번 곱해지고~ 다음에는 얘랑 더해지고~"이런 느낌?

 

for문을 두 개로 끝내고 싶었는데 아무리 생각해도 변해야하는 값들이 3개였다.

그래서 처음으로 for문 안에 for문 안에 for문을 사용했다!

for문이 많아지면 헷갈릴 수 있는데 나름 차분하게 잘 푼듯! 뿌듯:)

 

def solution(arr1, arr2):
    answer = []
    
    for i in range(len(arr1)):
        answer_element = []
        for j in range(len(arr2[1])):
            element = 0
            for k in range(len(arr1[1])):
                element += arr1[i][k] * arr2[k][j]
            answer_element.append(element)
        answer.append(answer_element)
    
    return answer

 

통과!


링크

https://github.com/ornni/programmers/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/2/12949.%E2%80%85%ED%96%89%EB%A0%AC%EC%9D%98%E2%80%85%EA%B3%B1%EC%85%88

 

programmers/프로그래머스/2/12949. 행렬의 곱셈 at main · ornni/programmers

repository for recording Programmers Algorithm problem solving - ornni/programmers

github.com

 

반응형

'코딩 테스트 > 프로그래머스' 카테고리의 다른 글

기사단원의 무기  (0) 2024.05.17
햄버거 만들기  (2) 2024.05.16
붕대 감기  (0) 2024.05.15
크기가 작은 부분 문자열  (0) 2024.05.14
추억 점수  (0) 2024.05.13