행렬의 곱셈은 두 행렬의 크기가 조건에 맞는 경우에만 계산이 가능하다.
앞 행렬의 열의 수
와 뒤 행렬의 행의 수
가 같아야 계산이 가능하다.
곱셈의 결과로 나오는 행의 크기는 앞 행렬의 행의 수
x 뒤 행렬의 열의 수
가 된다.
문제 풀이
public int[][] solution(int[][] arr1, int[][] arr2) {
int arr1_row = arr1[0].length;
int arr1_col = arr1.length;
int arr2_row = arr2[0].length;
int arr2_col = arr2.length;
int[][] result = new int[arr1_col][arr2_row];
for(int i = 0; i<arr1_col; i++) {
for(int j = 0; j<arr2_row; j++) {
int sum = 0;
for(int k = 0; k<arr1_row; k++) {
sum += arr1[i][k] * arr2[k][j];
}
result[i][j] = sum;
}
}
return result;
}