-
[백준 2740] - [행렬]- 행렬 곱셈알고리즘/분할정복(Divide and conquer) 2018. 11. 28. 16:39
문제 링크 : https://www.acmicpc.net/problem/2740
이 문제는 행렬의 곱을 계산하면 되는 문제다.
음 이문제는 너무 수학이라 어떻게 셜명을 해야할지 모르겠다.
그냥 풀자.
소스
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main {public static void main(String[] args) throws IOException{BufferedReader br = new BufferedReader(new InputStreamReader(System.in));StringTokenizer st = new StringTokenizer(br.readLine());int row1 = Integer.parseInt(st.nextToken());int col1 = Integer.parseInt(st.nextToken());int[][] binArr1 = new int[row1][col1];for(int i=0; i < row1; i++) {st = new StringTokenizer(br.readLine());for(int j=0; j < col1; j++) {binArr1[i][j] = Integer.parseInt(st.nextToken());}}st = new StringTokenizer(br.readLine());int row2 = Integer.parseInt(st.nextToken());int col2 = Integer.parseInt(st.nextToken());int[][] binArr2 = new int[row2][col2];for(int i=0; i < row2; i++) {st = new StringTokenizer(br.readLine());for(int j=0; j < col2; j++) {binArr2[i][j] = Integer.parseInt(st.nextToken());}}for(int i=0; i < row1; i++) {for(int j=0; j < col2; j++) {int sum = 0;for(int k=0; k < col1; k++) {sum += binArr1[i][k] * binArr2[k][j];}System.out.print(sum + " ");}System.out.println("");}}}cs '알고리즘 > 분할정복(Divide and conquer)' 카테고리의 다른 글
[백준 2309] - [분할정복] 일곱 난쟁이 - JAVA (0) 2018.11.30 [백준 2263] - [분할정복] - 트리의 순회(java) (1) 2018.11.29 [백준 1992] - [분할정복] - 쿼드트리 (0) 2018.11.29 [백준 2749] - [분할정복 수학] - 피보나치 3 (0) 2018.11.28 [백준 1780]-[분할정복]-종이의 개수 (JAVA) (0) 2018.11.28 댓글