-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
Top down, Bottom Up
22.03.08 19:43 작성 조회수 96
0
안녕하세요 강사님 강의 정말 잘 듣고 있습니다.
해당 문제에서 궁금한 점이 있어 질문드립니다.
보석의 개수가 무제한이라는 조건에서 다음과 같이 푸셨는데
for i in range(n):
for j in range(w[i],k+1):
dp2[j] = max(dp2[j-w[i]] + v[i], dp2[j])
문제의 조건에서 보석이 무제한이라는 조건이 없고 하나씩만 써야 한다면 다음과 같이 풀어야 답이 나오더라구요
for i in range(n):
for j in range(k, w[i]-1, -1):
dp1[j] = max(dp1[j-w[i]] + v[i], dp1[j])
이때, j를 거꾸로 돌고 안돌고의 차이가 어떤 영향을 미치는지 궁금해서 질문드립니다.
답변을 작성해보세요.
답변 0