Dynamic Progamming

 

문제풀이 요령

  • 재귀로 여러번 써야되는 것을 memoization 기법으로 계산 수를 줄이는데 효과적이다. 따라서 중복 계산이 많은 문제(sub array)에서 쓰면 좋다.
  • 이 유형은 가장 흔한 유형이기 때문에 한 가지 패턴을 정해두고 항상 같은 형태로 구현해버리면 작성도 쉽고 버그 찾는 것도 쉬워지니 자신만의 패턴을 만드는 것이 좋다.
  • continuous sub array 문제라면 일단 kadane - 지금까지 축적해온 합을 이용한 알고리즘을 이용해서 풀어본다.