首页 > 其他分享 >每日打卡-33

每日打卡-33

时间:2023-05-26 18:33:07浏览次数:36  
标签:买卖 33 股票 每日 profit int prices 打卡 交易日

一.问题描述

给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。

在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。

返回 你能获得的 最大 利润 。

二.设计思路

其实你完全没有必要去想怎么买卖才能利益最大化,因为这个题目是给出了后面几天的股价的,所以我们可以到第二天再做决策。

所以,第二天股价涨时,把我们就买入前一天的股票,再前一天的股票卖出,也就是第二天得到了利润

如果第二天跌了,我们第一天就不买入

总结一下就是:

连续上涨交易日: 则第一天买最后一天卖收益最大,等价于每天都买卖。


连续下降交易日: 则不买卖收益最大,即不会亏钱。
故可以遍历整个股票交易日价格列表,在所有上涨交易日都买卖(赚到所有利润),所有下降交易日都不买卖(永不亏钱)。

三.流程图

四.伪代码 

1

五.代码实现 

class Solution {
public:
    int maxProfit(vector<int>& prices) {
        int day = prices.size();
        int profit = 0;

        for (int i = 1; i < day; ++i)
        {
            // 股价比前一天高就卖出
            if (prices[i] > prices[i - 1])
                profit += prices[i] - prices[i - 1];
        }

        return profit;
    }
};

 

标签:买卖,33,股票,每日,profit,int,prices,打卡,交易日
From: https://www.cnblogs.com/leapssisbird/p/17435546.html

相关文章

  • 2023.5.26编程一小时打卡
    一、问题描述:定义复数类MyComplex,主函数完成相关测试。MyComplex类结构说明:1、数据成员包括:私有数据成员:实部x(double)虚部y(double)。2、成员函数包括:无参构造函数MyComplex(void),其功能是将数据成员数部和虚部的值均设为0;有参构造函数MyComplex(doublevalue1,doublevalue2),其功能......
  • 每日一练 | 网络工程师软考真题 Day12
    阅读以下说明,答复以下【问题1】至【问题3】【说明】某单位有1个总部和6个分部,各个部门都有自己的局域网。该单位申请了6个C类IP地址202.115.10.0/24~202.115.15.0/24,其中总部与分部4共用一个C类地址。现方案将这些部门用路由器互联,网络拓扑结构如图1-1所示。【问题1】该网络采用R1~R......
  • 每日一练 | 网络工程师软考真题 Day13
    阅读以下说明,回答以下问题1至问题6。【说明】某公司的两个部门均采用Windows2003的NAT功能共享宽带连接访问Internet,其网络结构和相关参数如图2-1所示。ISP为该公司分配的公网IP地址段为202.117.12.32/29。【问题1】在Windows2003中, (1) 不能实现NAT功能。备选答案:A.终端效劳管......
  • 5.26打卡
      3.程序流程图4.代码实现 #include<bits/stdc++.h>usingnamespacestd;main(){inti,j,s,n;printf("请输入所选范围上限:");scanf("%d",&n);for(i=2;i<=1000;i++){s=0;for(j=1;j<=n/2;j++)......
  • 打卡23
    #include<string>#include<iostream>usingnamespacestd;#definePI3.14159fclassShape{public: virtualvoidset()=0; virtualfloatgetarea()=0;};classCircle:publicShape{private: floatr;public: voidset() { cin>>......
  • 打卡36
      循环先判断指数是否为素数,再判断梅森数是否为素数。#include<bits/stdc++.h>usingnamespacestd;boolf(intx){ for(inti=2;i<=x/i;i++) { if(x%i==0)returnfalse; } returntrue;}intmain(){ for(inti=2;i<=20;i++) { if(f(i)) { ints=pow(2,i)-1; if(f(......
  • 继承/闭包打卡
    01继承1.继承引入-是类与类之间的关系子类继承父类子类就拥有父类的属性和方法【重点】2.es5:继承语法 1.call函数继承-构造函数继承(继承属性)在子类的构造函数中使用父类构造函数的call函数实现继承Person.call(this,name,age)//构造函数继承......
  • Springboot集成百度地图实现定位打卡功能
    打卡sign表sqlCREATETABLE`sign`(`id`int(11)NOTNULLAUTO_INCREMENT,`user`varchar(255)COLLATEutf8mb4_unicode_ciDEFAULTNULLCOMMENT'用户名称',`location`varchar(255)COLLATEutf8mb4_unicode_ciDEFAULTNULLCOMMENT'打卡位置',`......
  • 打卡第三十五天
    矩阵的乘法运算一、1。建立一个整数矩阵类matrix2.建立该整数矩阵类matrix构造函数;建立一个*(乘号)的运算符重载;建立输出函数voiddisplay()3.主函数输入矩阵对象二、三、#include<iostream>#include<iomanip>usingnamespacestd;classmatrix{private:introw;i......
  • 2023/5/25每日随笔
       今天,一天而没上课,因为就一节课体育课,然后下雨没上,学了一天的数据库,学了关系模型,约束条件,完整性,还有建表sql语句与查询sql语句,学到了很多,对项目界面进行简单优化。对于软件的人机交互进行优化lHandler 通过Handler你可以发布或者处理一个消息或者是一个Runnable的实例......