1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

解题思路

  • 相关算法:贪心算法(或等价的两状态 DP)。 核心结论:把所有相邻两天的上涨差值都赚到手即可。对每个 i=1..n-1,若 prices[i] > prices[i-1],就把差值 prices[i]-prices[i-1] 加入答案。将所有正差值求和就是最大收益。

  • 实现要点:

    1. 一次遍历价格数组;
    2. 若今天价高于昨天,则把这一段利润累加;
    3. 遍历结束即为答案。 该思路等价于“把所有上升段拆成若干买入-卖出的子交易”,拆分或合并不影响总收益。

P3775.第1题-股票收益

    1000ms Tried: 83 Accepted: 14 Difficulty: 3 所属公司 : 中兴
    算法与标签>贪心算法

题目内容

用给定一个正整数及非负整数 pricespricesprices 的列表,第一个正整数表示 pricespricesprices 列表中数字的总个数,pricespricesprices 表示某个股票在每天的价格。

用户初始持有股票为 000 ,现在需要基于 pricespricesprices 的价格列表计算出如何买入卖出能够得到最大的现金收益。

其中要求每天仅能够持有一份股票,但是每天都可以将股票买入或者卖出,如果无法取得收益,返回的结果应该为 000 。

示例:

6
715364

表示共有 666 天的股票价格,第 111 天到第 666 天的价格分别为 777 111 555 333 666 444 。

输出:

7

表示可以得到的最大收益为 777

方法为:在第 222 天以 111 的价格买入,第 333 天以 555 的价格卖出,收益为 5−1=45-1=45−1=4 ;

在第 444 天以 333 的价格买入,第 555 天以 666 的价格卖出,收益为 6−3=36-3=36−3=3 ,总共收益为 4+3=74+3=74+3=7 。

输入描述

输入两行数字,第一行仅有一个数字,代表待股票价格的总个数,第二行是每天的股票价格 pricespricesprices ,股票价格之间使用空格间隔。

提示:

1<=prices.length<=1051<= prices.length <= 10^51<=prices.length<=105

0<=prices[i]<=1040<= prices[i]<= 10^40<=prices[i]<=104

输出描述

输出为一个数字,表示股票买入卖出后可获取的最大收益值。

样例1

输入

"6\n7 1 5 3 6 4"

输出

"7"

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 3, 33ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?