solve the best time to buy and sell stock III problem.