[BOJ] 백준 10830 행렬 제곱 (JAVA)
Algorithm/- Baekjoon2024. 3. 13. 00:39[BOJ] 백준 10830 행렬 제곱 (JAVA)

📑 문제🌱 아이디어분할정복을 이용한 행렬제곱 문제, 큰 문제를 작은 단위로 나눠서 풀어보자 분할 정복의 가장 기본적인 개념은 큰 문제를 작은 단위로 나눠서 푸는 것이다.. 예를 들면 N^8 은 N*N*N*N*N*N*N*N 이다. 즉 N을 8번 곱해야 한다.  분할 정복을 통해 작은 단위로 나눠서 bottom up 방식으로 푼다면  (((N^2)^2)^2) 3번만 연산하면 된다. 이는 O(logn)의 시간복잡도를 가지며 N^B, B가 클수록 좋은 성능을 보여준다.  그리고 행렬 A와 행렬 B를 곱한다면 A =1234 B =5678  A X B =1*5+2*71*6+2*83*5+4*73*5+4*8 위와 같이 행렬곱셈과 동시에 분할정복으로 작은 단위 ~ 큰 단위로 답을 도출해야 한다.🌱 코드 및 풀이 만..

반응형
image