我们在做这道题时需要发现一个性质,只要发现了这个性质,这道题就会变得简单了。
我们可以把买和卖的区间分解,比如我们第一天买的股票,第3天卖出
prices[2]-princes[0],可以分解为prices[1]-prices[0]+prices[2]-prices[1];
知识点:
1:这里用了比较的知识点
i-1和i比从i=1开始
i和i+1比,结束从i+1<n开始
2:
判断一个数是否大于0直接max和0比较
class Solution {
public:
int maxProfit(vector<int>& prices) {
int res=0;
for(int i=1;i<prices.size();i++){
res+=max(0,prices[i]-prices[i-1]);
}
return res;
}
};