gary@interview:~/interview/coding/276-paint-fence.md$
$ cat ./coding/276-paint-fence.md
[Coding]

276. Paint Fence

────────────────────────────────────────────────────────────

276. Paint Fence

class Solution:
    def numWays(self, n: int, k: int) -> int:
        
        memo = {}
        def dfs(ways):
            if ways == 1:
                return k
            if ways == 2:
                return k * k
            
            if ways not in memo:
                memo[ways] = (k - 1) * (dfs(ways - 1) + dfs(ways - 2))
            
            return memo[ways]
        
        return dfs(n)
--tags#Dynamic Programming
$ ls ./coding/ | grep -v 276-paint-fence
265. Paint House II256. Paint House143. Reorder List1762. Buildings With an Ocean View
← cd ../codingcd ~