본문 바로가기

알고리즘/dp15

[DP] 2629 - 양팔저울(골드 3) with Python https://www.acmicpc.net/problem/2629 2629번: 양팔저울 첫째 줄에는 추의 개수가 자연수로 주어진다. 추의 개수는 30 이하이다. 둘째 줄에는 추의 무게들이 자연수로 가벼운 것부터 차례로 주어진다. 같은 무게의 추가 여러 개 있을 수도 있다. 추의 무 www.acmicpc.net 주저리 주저리 Knapsack 문제 2탄 솔직히 평번한 배낭에 비해서 무엇이 달라졌는지 잘 못느낄 것 같다. 이게 왜 골드 5랑 3난이도의 차이인지 잘 못느끼겠는 그런 느낌...? 문제 해결 간단하게만 말해서 3가지만 기억하면 된다 추를 둘 것인가 추를 두지 않을 것인가 추를 뺄 것인가 이 3가지의 경우만 생각해서 모든 케이스를 다 넣으면 된다. 2023.02.20 - [알고리즘/dp] - [DP].. 2023. 2. 21.
[DP] 12865 - 평범한 배낭 (골드 5) with Python 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 주저리 주저리 Knapsack 문제의 대표적인 백준 문제 겁먹지 않고 dp차원으로 차근히 보면 쉽게 답이 나온다 문제 해결 자 DP의 대표적인 문제인 배낭 문제이다. DP로 풀수 있게 접근을 해보자. 간단하게 물건들에 대한 정보가 나오니 그 순서대로 기록을 하는것이 나을 것 같다. 자 dp를 물건의 순서 번호와 무게로 이렇게 2차원.. 2023. 2. 20.
[DP] 11055 - 가장 큰 증가 부분 수열 (실버2) with Python https://www.acmicpc.net/problem/11055 11055번: 가장 큰 증가 부분 수열 수열 A가 주어졌을 때, 그 수열의 증가 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가 부분 수 www.acmicpc.net 주저리 주저리 이 문제도 아래 문제랑 비슷하게 좋다고 생각한다. 2023.02.19 - [알고리즘/dp] - [DP, 이분탐색] 11053 - 가장 긴 증가하는 부분 수열(실버 2) with Python [DP, 이분탐색] 11053 - 가장 긴 증가하는 부분 수열(실버 2) with Python https://www.acmicpc.net.. 2023. 2. 19.
[DP, 이분탐색] 11053 - 가장 긴 증가하는 부분 수열(실버 2) with Python https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net https://www.acmicpc.net/problem/12015 12015번: 가장 긴 증가하는 부분 수열 2 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000,000) www.acmicpc.net 주저리 .. 2023. 2. 19.
728x90