[프로그래머스] 12949. 행렬의 곱셈
문제 링크
풀이 과정
두 행렬 A와 B의 곱은 A의 행 X B의 열
의 차원을 갖습니다.
행렬의 곱셈 전개 방식에 따라 아래와 같은 식을 도출해 낼 수 있습니다.
코드
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static int[][] solution(int[][] arr1, int[][] arr2) {
int[][] answer = new int[arr1.length][arr2[0].length];
for (int i = 0; i < arr1.length; i++) {
for (int k = 0; k < arr2[0].length; k++) {
int sum = 0;
for (int j = 0; j < arr1[0].length; j++) {
sum += arr1[i][j] * arr2[j][k];
}
answer[i][k] = sum;
}
}
return answer;
}
public static void main(String[] args) {
int[][] arr1 = {{1, 4}, {3, 2}, {4, 1}};
int[][] arr2 = {{3, 3}, {3, 3}};
// int[][] arr1 = {{2, 3, 2}, {4, 2, 4}, {3, 1, 4}};
// int[][] arr2 = {{5, 4, 3}, {2, 4, 1}, {3, 1, 1}};
int[][] answer = solution(arr1, arr2);
for (int i = 0; i < answer.length; i++)
System.out.println(Arrays.toString(answer[i]));
}
}
댓글남기기