728x90
1231번: 주식왕 동호
첫 줄에는 주식의 개수 C(1 ≤ C ≤ 50)과 주식 매입 및 매각을 할 기간 D(2 ≤ D ≤ 10), 초기 자금 M(1 ≤ M ≤ 200,000)이 공백으로 구분되어 주어진다. 두 번째 줄부터 C+1번째 줄까지 각 줄에는 각각 주
www.acmicpc.net
분석
[12865] 평범한 배낭 (냅색 알고리즘)
12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의
karla.tistory.com
풀이
import sys
input=sys.stdin.readline
c,d,m=map(int, input().split())
a=[]
for _ in range(c):
a.append(list(map(int,input().split())))
for j in range(1,d): # 날짜
cache=[0]*(m+1)
for i in range(c): # 주식
now=a[i][j]
pre=a[i][j-1] # 같은주식 전날 값
for k in range(a[i][j-1],m+1):
cache[k] = max(cache[k], cache[k-pre]+now-pre)
m += cache[m]
728x90