알고리즘/프로그래머스

프로그래머스 - 행렬의 곱셉

시나모온 2020. 9. 24. 23:59

문제 링크입니다 : programmers.co.kr/learn/courses/30/lessons/12949

 

코딩테스트 연습 - 행렬의 곱셈

[[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]]

programmers.co.kr

 

간단한 구현 문제

 

 

 

 

#include <string>
#include <vector>

using namespace std;

vector<vector<int>> solution(vector<vector<int>> arr1, vector<vector<int>> arr2) {
    vector<vector<int>> answer;
    
    answer.assign(arr1.size(), vector<int>(arr2[0].size(), 0));
    
    for(int i = 0; i < arr1.size(); i++) {
        for(int j = 0; j < arr2[0].size(); j++) {
            for(int k = 0; k < arr1[0].size(); k++) {
                answer[i][j] += arr1[i][k] * arr2[k][j];
            }
        }
    }
    
    
    return answer;
}

 

 

 

개발 환경 : vscode

지적, 조언, 질문 환영입니다! 댓글 남겨주세요~