【牛客题霸题解】股票(无限次交易)

股票交易的最大收益

http://www.nowcoder.com/questionTerminal/9e5e3c2603064829b0a0bbfca10594e9

例 :1 5 8 4 2 3 6 4 10 7 3 2 1 6
图片说明
对于这个样例来说,最优的交易应该是:
第1天买,第3天卖
第5天买,第7天卖
第8天买,第10天卖
第13天买,第14天卖
我们再观察可以发现,其实可以简化成,只要是两天之间是上涨的,那我们就要这一段的收益。

c++

class Solution {
public:
    int maxProfit(vector<int>& prices) {
        int ans = 0;
        for(int i = 1 ; i < prices.size() ; i++)
        {
                if(prices[i]>prices[i-1])
                {
                       ans+= prices[i]-prices[i-1];
                }

        }
            return ans;
    }
};

java

import java.util.*;
public class Solution {
    public int maxProfit (int[] prices) {
        int ans = 0;
        for(int i = 1 ; i < prices.length ; i++)
        {
                if(prices[i]>prices[i-1])
                {
                       ans+= prices[i]-prices[i-1];
                }

        }
            return ans;
    }
}

python

class Solution:
    def maxProfit(self , prices ):
        # write code here
        ans = 0;
        Len = len(prices)
        for i in range(1,Len):
            if prices[i]>prices[i-1]:
                ans+= prices[i]-prices[i-1];
        return ans;
牛客题霸题解 文章被收录于专栏

QAQ

全部评论

相关推荐

2025-11-10 08:05
河北师范大学 Java
用微笑面对困难:你出于礼貌叫了人一声大姐,大姐很欣慰,她真把你当老弟
点赞 评论 收藏
分享
2025-12-09 16:37
西北大学 前端工程师
点赞 评论 收藏
分享
评论
36
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务