Rod cutting problem (DP).
Understand basic dynamic programming concept (top-down, bottom-up) by solving factorial problem. Solve greedy problem minimum cost of connect n rope.