三道SQL、两道编程。第一道优化一下100%。第二题 leetcode原题变种,股票问题。做题时,误以为最多只能交易两次,k当成2处理了,只能过了66.7%。以下是补交版本,没有运行,大概思路。public class Solution {public double get_max_profit (double M, int N, double[] historyPrices, int K) {// write code here//方法跟leetcode原题基本一样,区别是[0][0] 代表第一次持有的股票数量,[0][1] 代表卖出的钱double[][] dp = new double[K][2];for (int i = 0; i < k; i++) {dp[i][0] = M / historyPrices[0];dp[i][1] = M;}for (int i = 1; i < N; i++) {dp[0][0] = Math.max(dp[0][0],dp[0][1]/historyPrices[i]);dp[0][1] = Math.max(dp[0][1],dp[0][0] * historyPrices[i]);for (int j = 1; j < k; j++) {dp[j][0] = Math.max(dp[j][0],dp[j - 1][1] / historyPrices[i]);dp[j][1] = Math.max(dp[j][1],dp[j - 1][0] * historyPrices[i]);}}return dp[k - 1][1] - M;}}