// i번째 퀘스트까지 고려했을 때
// 지금까지 퀘스트를 진행하는 데 걸리는 시간의 총 합이 j일 때
// 얻을 수 있었던 최대 경험치
// 이전꺼를 선택한 경우
if(j - time[i] >= 0) {
dp[i][j] = Math.max(dp[i][j],
dp[i-1][j-time[i]] + exp[i]
);
}
// 이전꺼를 선택 안한 경우
dp[i][j] = Math.max(dp[i][j], dp[i-1][j]);
'Java' 카테고리의 다른 글
에라토스테네스의 체 : 소수 찾기 (0) | 2025.03.30 |
---|---|
GCD, LCM 구하기 : 유클레드 호제법, a*b / gcd(a,b) (0) | 2025.03.30 |
[백준] 1162 : 도로포장 (0) | 2025.03.27 |
[프로그래머스] 연속된 부분 수열의 합 (0) | 2025.03.26 |
[프로그래머스] 징검다리 건너기 (0) | 2025.03.25 |