122 - Best Time to Buy and Sell Stock II

解法

由於他是可以一直買賣,因此只要與前一天有賺就收集下來,全部累積下來就是答案。

程式碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
using namespace std;
int ans[30020];
class Solution {
public:
int maxProfit(vector<int>& prices) {

ans[0] = 0;
for(int i = 1; i < prices.size(); i++){
int cnt = prices[i] - prices[i-1];
if(cnt < 0) cnt = 0;
ans[i] = ans[i-1] + cnt;
}

for(int i = 0; i < prices.size(); i++){
cout << "i ans[i]" << i << " " << ans[i] << "\n";
}
return ans[prices.size()-1];
};
};

// for(int i = 0; i < prices.size(); i++){
// for(int j = i+1; j < prices.size(); j++){
// int cnt = prices[j] - prices[i];
// if(cnt < 0) cnt = 0;
// ans[j] = max(ans[i] + cnt, ans[j-1]);
// }
// }
  • 版權聲明: 本部落格所有文章除有特別聲明外,均採用 Apache License 2.0 許可協議。轉載請註明出處!
  • © 2020-2024 John Doe
  • Powered by Hexo Theme Ayer
  • PV: UV: