Computer Science - Algorithms - Dynamic programming - DP Solutions
P1: 'Climbing stairs (1 or 2 steps). Ways to reach step n?' → dp[i] = dp[i-1] + dp[i-___] [2]. P2: 'Memoization decorator' → def fib(n, memo={}): if n in ___: return memo[n] [memo]; if n<=1: return n; memo[n] = fib(n-1,memo)+fib(n-2,memo). P3: 'Longest common subsequence' → if s1[i]==s2[j]: dp[i][j]