본문 바로가기
반응형

다이나믹프로그래밍4

[Python] 백준 11049번 - 행렬 곱셈 순서 (골드 3) 혼자 힘으로 풀었는가? X 알고리즘 분류 - DP https://www.acmicpc.net/problem/11049 11049번: 행렬 곱셈 순서 첫째 줄에 입력으로 주어진 행렬을 곱하는데 필요한 곱셈 연산의 최솟값을 출력한다. 정답은 231-1 보다 작거나 같은 자연수이다. 또한, 최악의 순서로 연산해도 연산 횟수가 231-1보다 작거나 같 www.acmicpc.net 문제 크기가 N×M인 행렬 A와 M×K인 B를 곱할 때 필요한 곱셈 연산의 수는 총 N×M×K번이다. 행렬 N개를 곱하는데 필요한 곱셈 연산의 수는 행렬을 곱하는 순서에 따라 달라지게 된다. 예를 들어, A의 크기가 5×3이고, B의 크기가 3×2, C의 크기가 2×6인 경우에 행렬의 곱 ABC를 구하는 경우를 생각해보자. AB를 먼저.. 2024. 4. 9.
[Python] 백준 14002번 - 가장 긴 증가하는 부분 수열 4 (골드 4) 혼자 힘으로 풀었는가? O 알고리즘 분류 - 다이나믹 프로그래밍 (DP) https://www.acmicpc.net/problem/14002 14002번: 가장 긴 증가하는 부분 수열 4 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 문제 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20.. 2024. 2. 5.
[Python] 백준 2133번 - 타일 채우기 (골드 4) 혼자 힘으로 풀었는가? X 알고리즘 분류 - DP 문제 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. 입력 첫째 줄에 N(1 ≤ N ≤ 30)이 주어진다. 출력 첫째 줄에 경우의 수를 출력한다. 문제를 읽지도 않고 제목만 보자마자 DP인걸 알아야 한다 이제 문제는 점화식을 어떻게 정립하는가? 이다. https://blog.naver.com/zdudmanz/222285104463 Python 백준 2133 타일채우기 □ 생각정리 1. 규칙을 찾는건 생각보다 쉽다. dp[4]=dp[4-2]*3+dp[4-4]*2+2 dp[6]=dp[6-2]*3+... blog.naver.com 점화식은 다음과 같다. 예를 들어 dp[n]을 구하고자 한다면 dp[8] = dp[6] * dp[2.. 2023. 11. 19.
[Python] 백준 5557번 - 1학년 (골드 5) 혼자 힘으로 풀었는가? O 알고리즘 분류 - 다이나믹프로그래밍(DP) https://www.acmicpc.net/problem/5557 5557번: 1학년 상근이가 1학년 때, 덧셈, 뺄셈을 매우 좋아했다. 상근이는 숫자가 줄 지어있는 것을 보기만 하면, 마지막 두 숫자 사이에 '='을 넣고, 나머지 숫자 사이에는 '+' 또는 '-'를 넣어 등식을 만들며 놀 www.acmicpc.net 문제 상근이가 1학년 때, 덧셈, 뺄셈을 매우 좋아했다. 상근이는 숫자가 줄 지어있는 것을 보기만 하면, 마지막 두 숫자 사이에 '='을 넣고, 나머지 숫자 사이에는 '+' 또는 '-'를 넣어 등식을 만들며 놀고 있다. 예를 들어, "8 3 2 4 8 7 2 4 0 8 8"에서 등식 "8+3-2-4+8-7-2-4-0+8=.. 2023. 10. 30.
반응형