알고리즘 2

[BOJ] 11049. 행렬 곱셈 순서 (python, DP, 그림풀이)

https://www.acmicpc.net/problem/11049 11049번: 행렬 곱셈 순서 첫째 줄에 입력으로 주어진 행렬을 곱하는데 필요한 곱셈 연산의 최솟값을 출력한다. 정답은 231-1 보다 작거나 같은 자연수이다. 또한, 최악의 순서로 연산해도 연산 횟수가 231-1보다 작거나 같 www.acmicpc.net 이 문제를 풀 때, 고민한 부분들이 있는데 A와 B를 계산하고 난 후에, 계산한 행렬이 변형이 되는데( ex. A(5,3) * B(3,2) -> (5*2) 이 변형된 행렬을 어떻게 저장하고 계산해야 할지 1번 전제에서부터 DP테이블을 어떻게 구현해야 하는지, 값을 어떻게 저장해야하는지 위 질문들을 던져보았고, 1번과 2번을 풀이과정을 통해 이해하게 되었다. 정말 단순 이해만 하게 되었..

[BOJ] 11066. 파일합치기 ( python, 그림낙서, DP, 회고록 )

https://www.acmicpc.net/problem/11066 11066번: 파일 합치기 소설가인 김대전은 소설을 여러 장(chapter)으로 나누어 쓰는데, 각 장은 각각 다른 파일에 저장하곤 한다. 소설의 모든 장을 쓰고 나서는 각 장이 쓰여진 파일을 합쳐서 최종적으로 소설의 완성본 www.acmicpc.net DP는 풀어도 적응이 안되고, 난이도가 높아지면 높아질수록 적용방법을 모르겠다 이 문제를 풀 때, 순서에 따라 계산을 하면 결과가 달라지기 때문에 조합을 이용해야 할 것 같다 조합되는 개수가 홀수, 짝수에 의해 달라지는 최솟값을 도출해야 할 것 같다 연속되는( 3 다음에 3과 같은 연속 ) 숫자를 기반으로 찾아 최솟값을 추론할 수 있을 것 같다 라고 생각했다. 결론적으로는 1번 조합을 추..