dy[j]는 나에게 j분이 주어졌을 때 얻을 수 있는 최대 점수이다. d[16]은 16분이 주어졌을 때 얻을 수 있는 최대 점수 앞의 문제 처럼 앞에서 부터 탐색하면 해당 문제를 2번 풀 수 있게 되어버린다! 그렇기 때문에 뒤에서부터 탐색하여 1번씩만 풀 수 있게 한다. 갯수가 무한정이다 - 앞에서부터 갯수가 무한정이 아니다 - 뒤에서부터 i = 0일 때 j = 20 ~ 5까지 돔 - 제한 시간이 5분이라서 20 ~ 5분 문제 풀 수 있음 dy[20] = Math.max(dy[20], dy[20-5]+10) = 10 - 5분 걸리는 10점 문제 하나 풀음 ... dy[5] = Math.max(dy[5], dy[5-5]+10) = 10 - 5분 걸리는 10점 문제 하나 풀음 i = 1일 때 j = 20 ~..