본문 바로가기
전공공부/코딩테스트

(c++) 프로그래머스 "행렬의 곱셈"

by 시아나 2022. 4. 21.

https://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;
    for (int i = 0; i < arr1.size(); i++) {
        vector<int> tmp;
        for (int k = 0; k < arr2[0].size(); k++) {
            int n = 0;
            for (int x = 0; x < arr2.size(); x++) {
                n += (arr1[i][x] * arr2[x][k]);
            }
            tmp.push_back(n);
        }
        answer.push_back(tmp);
    }
    return answer;
}