아마 내 블로그에 올라오는 첫 easy 레벨의 리트코드 문제라고 생각하지만 DP에 대한 이해도를 효율 높고 빠르게 터득할수있도록 이런 기초부터 다지면서 문제를 계속 풀어볼 생각이다. Climing Stairs 문제는 계단을 1개 혹은 2개까지 올라갈수있는데 n만큼의 계단을 오르는 방법을 리턴해야 하는 문제다.
이 문제는 그냥 fibonacci 문제와 같은 문제라고 볼수있다. DFS(n-1) + DFS(n-2) 같이 단순하게 재귀를 함으로서도 답을 찾을수있지만 DP문제인만큼 n이 커질수록 TLE가 나오기때문에 Memorization 을 활용한 방법을 써서 반복되는 계산을 멈출수있었다.
해당 ret 변수를 이용한 코드는 구종만의 프로그래밍 강의가 쓰여져있는 책을 참고하고 배워왔던 코드이다. 재귀 함수의 과정은 솔직히 지금 생각해도 아직은 어려운거같기 때문에 조금만 더 연습이 필요한거같다.
배운점:
1. 재귀 함수, 그리고 DP 의 시작