xiaonanu 2023-04-01 11:07 采纳率: 0%
浏览 20

c++之股票低买高卖问题

题目描述
你有预测股票的能力:可以知道某只股票未来 N 天的价格。

你当然准备通过这项能力获利,但为了不让别人发现你的“钞能力”,只打算每天最多交易一股股票。也就是说,每天你要么买入一股,要么卖出一股(当你没有任何股票时,你就不能出售),要么什么都不做。

最初你拥有零股,但可以融资(借钱)。在 N 天结束后,你要把借来的钱还回去,同时帐下恢复零股。

现在问题来了:通过最合理的买卖,你可以从这 N 天内赚到多少钱。

输入格式
第一行输入一个数,表示 N。
接下来一行是 N 个数,
pi表示股票在第n天的价格

输出格式
输出一个数 M,表示这 N 天最多可以赚到的利润。

输入输出样例:

输入1:

9
10 5 4 7 9 12 6 2 10

输出1:

20
  • 写回答

3条回答 默认 最新

  • 微软技术分享 全栈领域优质创作者 2023-04-01 11:11
    关注

    这是一个经典的股票买卖问题,可以使用贪心算法来解决。

    具体思路是,在每个价格上升的阶段买入,在价格下降的阶段卖出,即对于第i天,如果pi>pi−1,则将第i−1天买入,第i天卖出,否则不进行操作。最终累加所得到的利润即可。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月1日

悬赏问题

  • ¥15 无源定位系统的时差估计误差标准差
  • ¥15 请问这个代码哪里有问题啊
  • ¥20 python--version在命令端输入结果Python is not defined怎么办?还有pip不是exe格式是不是没安装成功?
  • ¥15 通过GaussianView进行结构微调消除虚频
  • ¥15 调用transformers库
  • ¥15 由于导出的数据名字中带有/,导致Matlab打不开,怎么办?
  • ¥15 新硬盘安装的程序总是崩溃,提示遇到错误
  • ¥15 openpcdet自制数据集评估bev精度和3d精度相同
  • ¥15 excel 上下按钮 显示行
  • ¥20 云卓h12pro 数传问题