結果 : difference between divide and conquer greedy and dynamic programming algorithm design approach