def solution(A, B): gop = 0 result = 0 an=[] for k in range(2): answer=[] for i in range(0,2): result = 0 for j in range(0,2): gop = (A[k][j]*B[j][i]) result = result + gop answer.append(result) an.append(answer) return an # 아래는 테스트로 출력해 보기 위한 코드입니다. a = [ [ 1, 2 ], [ 2, 3 ]]; b = [[ 3, 4], [5, 6]]; print("결과 : {}".format(productMatrix(a,b))); # 위는 과거 내 코드이고(약 1년전) 아래는 현재 내 코드이다 def solution(lst, alst): ans = [[0] * len(alst[0]) for i in range(len(lst))] print(ans) for i in range(len(lst)): for k in range(len(lst[i])): print("first lst" , lst[i][k]) for j in range(len(alst[k])): ans[i][j] += lst[i][k] * alst[k][j] return ans
주어진 행렬을 곱해서 결과를 내는 문제이고 작년에 이미 한번 풀었던 문제이다.
새삼 다시 푸니 다른 느낌이고 무엇보다 많이 발전? 한것 같다
저 코드를 더 쉽게 하기위해선 zip 함수를 사용하면 된다.
'1일 1문제, 프로그래머스' 카테고리의 다른 글
프로그래머스, 레벨3, 야근지수(못품) (0) | 2018.08.02 |
---|---|
프로그래머스, 레벨3, 가장 긴 펠린드롬 (0) | 2018.07.31 |
프로그래머스, 레벨3, 2*n 타일링 (0) | 2018.07.26 |
프로그래머스, 레벨3) 줄세우기 (0) | 2018.07.23 |
프로그래머스, 레벨3, 하노이의 탑 (0) | 2018.07.16 |