일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- DFS
- react
- BOJ
- 동적계획법
- springboot
- euclideanalgorithm
- boj15683
- django
- TDD
- onTouch
- onTouchListner
- DynamicProgramming
- mysql
- backtracking
- BFS
- boj10775
- DP
- boj2252
- testdb
- boj15654
- nestedjson
- boj_15685
- bruteforce
- boj7579
- boj15954
- boj15998
- Spring
- boj_15684
- boj10942
- boj2239
- Today
- Total
목록동적계획법 (2)
이마닷의 블로그

0. 문제 https://www.acmicpc.net/problem/12865 12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net 1. 문제분석 - 기존의 상태(기존에 배낭에 넣은 다른 물건들로 인해 결정된 무게)에 대해서 기존의 상태를 바꿀 수 있는 경우의 수(기존 배낭에 새로운 물건을 넣는 것) 중, 그 최댓값을 찾는다는 점에서 Dynamic Programming을 사용해 문제를 풀어야 함을 알 수 있다. - dp[n][w] : n번째 물건까지 ..

0. 문제 https://www.acmicpc.net/problem/2643 2643번: 색종이 올려 놓기 첫 번째 줄에는 색종이의 장수가 주어진다. 다음 줄부터 각 줄에 색종이의 두 변의 길이가 주어진다. 두 변의 길이는 한 칸 띄어 주어진다. 색종이의 최대 장수는 100이고, 각 변의 길이는 1000보다 작은 자연수이다. www.acmicpc.net 1. 문제분석 - 이 문제는 색종이들을 쌓아올렸을 때, 해당 색종이를 위에 올려 놓을 수 있느냐 없느냐의 여부가 여태까지 쌓아올린 색종이 더미 중 가장 위에 있는 색종이의 가로 세로 길이에 따라 달라진다. 즉, 현재의 경우가 직전의 경우에 영향을 받게 되므로, 동적 계획법(dynamic programming)을 사용해서 문제를 풀어야 했다. - 또한 색종..