这道题目我在买卖股票III就已经得出规律了,具体可看买卖股票的最佳时机|||
class Solution {
public:int maxProfit(int k, vector<int>& prices) {int n=prices.size();vector<vector<int>> dp(n,vector<int>(2*k+1,0));for(int j=1;j<=2*k;j+=2)dp[0][j]=0-prices[0];for(int i=1;i<n;i++)for(int j=1;j<=2*k;j+=2){dp[i][j]=max(dp[i-1][j],dp[i-1][j-1]-prices[i]);dp[i][j+1]=max(dp[i-1][j+1],dp[i-1][j]+prices[i]);}return dp[n-1][2*k];}
};