#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> temp;
for(int j=0; j<arr2[0].size(); j++){ // 열
temp.push_back(0);
for(int k=0; k<arr1[i].size(); k++){ //arr1 열 , arr2 행
temp[j]+=arr1[i][k]*arr2[k][j];
}
}
answer.push_back(temp);
}
return answer;
}
1. 앞 행렬의 열의 갯수 와 뒷행렬의 행의 갯수가 같아야함
2. 결과 행렬은 앞행렬의 행의 갯수 *뒷행렬의 열의 갯수이다.
3 * 2 * 2 * 5 = 3 * 5
행 열 행 열 행 열
'알고리즘 일기' 카테고리의 다른 글
n으로 표현 // DP (0) | 2019.09.21 |
---|---|
영어 끝말잇기 // set 이용하기 자동 정렬 됨 string 도 back() front() 사용가능 (0) | 2019.09.04 |
피보나치 수열 // 동적 프로그래밍 (0) | 2019.09.03 |
프로그래머스 땅따먹기 // get_max 함수 구현하기 (0) | 2019.09.03 |
프로그래머스 다음 큰 숫자 // 이진수 변환 // 시간초과됨(해결완료) (0) | 2019.09.03 |
댓글