동적 계획법(DP)
1. 정의
- 특정 범위까지의 값을 구하기 위해서 다른 범위까지의 값을 이용하여 효율적으로 값을 구하는 알고리즘
- 이미 과거에 구한 값을 활용하여 불필요한 계산을 하지 않는다.
2. DP 언제 쓸까?
1. 최적의 정답을 찾을 때 : (~가능한) 최대값 또는 최소값.
2. 정답의 수를 세야 할 때 : 문제를 해결할 수 있는 경우의 수를 세고 싶을 때.
3. 방법론
- 탑다운(top-down) : 메모이제이션을 사용한 재귀 호출 방식.
- 바텀업(bottom-up) : 반복문(for문)을 사용, 일반적으로 점화식을 한 눈에 나타내기에 가독성이 좋다.
이건 한번 검색해서 보시면, 느낌이 오실겁니다!
https://blog.naver.com/kks227/220777103650
4. 대표 유형
1. 최적의 정답 : 최대 or 최소 구하기
2. 경우의 수
728x90
반응형
'알고리즘' 카테고리의 다른 글
[BOJ/백준] 7453번 - 합이 0인 네 정수 (0) | 2023.02.04 |
---|---|
[BOJ/백준] 14502번 - 연구소 C++ 문제 풀이(시간 초과 포함) (0) | 2021.10.03 |
다익스트라 알고리즘(Dijkstra's Algorithm) (0) | 2021.09.12 |
[BOJ/백준] 10451번 - 순열 사이클 (0) | 2021.08.23 |
[BOJ/백준] 11053번 - 섬의 개수 (0) | 2021.08.23 |