paranocean   6년 전

Bottom-UP으로 한번 풀고, 그 다음에 top-down 재귀로 풀어보려 하는데 시간이 너무 걸립니다. 그리디로 미리 근사해를 메모에 적어놓고 그 다음에 TopDown()함수를 써보는 것도 해봤는데 그래도 느려요. 어떻게 개선할 수 있을까요. 조언을 구합니다.

chogahui05   6년 전

어떻게 개선하느냐..

a라는 위치에 온 경우 이전에 있었던 위치는 후보해를 생각해 보시면 쉽습니다..

무슨 소리냐면 aaa라는 위치에 있을 때

bbb에 있거나 ccc에 있을 수가 있을 겁니다.

그런데 bbb에 왔을 때는 kkk에 있거나 ggg에 있거나.. 이런 상태가 나타난단 말이죠..

즉, dp[x][y]를 위치 x,y에 왔을 때 최대치. 라고 생각하시고 memoi 하시면 시간 줄이실 수 있어요.

chogahui05   6년 전

bottom up? 하실 때에는 dp배열 잘 하셨네요..

재귀식으로 top down 하는 것도 다르지 않을 거 같아요..

paranocean   6년 전

풀었습니다. 감사합니다.

댓글을 작성하려면 로그인해야 합니다.