프로그래머스 - 행렬의 곱셈(Lv2)
#include <string>
#include <vector>
using namespace std;
vector<vector<int>> solution(vector<vector<int>> arr1, vector<vector<int>> arr2) {
vector<vector<int>> answer;
vector<int> TempContainer;
for (int i = 0; i < arr1.size(); i++)//행렬 [ 3 by 2 ] * [2 by 4 ] 앞행렬 3에 해당됨
{
for (int j = 0; j < arr2[0].size(); j++)//행렬 [ 3 by 2 ] * [2 by 4 ] 뒷행렬 3에 해당됨 곱셈 후[ 3 by 4 ]생성
{
int Temp = 0;
for (int k = 0; k < arr2.size(); k++)
{
Temp += arr1[i][k] * arr2[k][j];//[ 3 by 4 ]에서 각각 만들어내는 방법(행렬계산법임)
}
TempContainer.push_back(Temp);//템프 컨테이너에 담아내고
}
answer.push_back(TempContainer);//
TempContainer.clear();//이부분 clear 해줘야한다.
}
return answer;
}
2차원 행렬 다루기에 대해 어느정도 능숙해진상태.
자세한 설명은 주석으로 처리한다.
Author And Source
이 문제에 관하여(프로그래머스 - 행렬의 곱셈(Lv2)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@imalive77/프로그래머스-행렬의-곱셈Lv2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)