每天刷两道题——第十天

1.1和为k的子数组

给你一个整数数组 n u m s nums nums 和一个整数 k k k ,请你统计并返回 该数组中和为 k k k 的子数组的个数子数组是数组中元素的连续非空序列

输入:nums = 1,2,3, k = 3
输出:2

前缀和

1.2如何使用

前缀和的主要用处:求任意区间的区间和

代码

python 复制代码
    def subArraySum(self,nums,k):
        count,n=0,len(nums)
        pre=[0]*(n+1)
        for i in range(1,n+1):
            pre[i]=pre[i-1]+nums[i-1]
        for i in range(1,n+1):
            for j in range(i,n+1):
                if (pre[j]-pre[i-1]==k):
                    count+=1
        return count

1.2买卖股票的最佳时机

给定一个数组 p r i c e s prices prices ,它的第 i i i个元素 p r i c e s i pricesi pricesi 表示一支给定股票第 i i i 天的价格。你只能选择某一天 买入这只股票,并选择在未来的某一个不同的日子卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0

输入7,1,5,3,6,4
输出:5
解释:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。

注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票

代码

python 复制代码
    def maxProfit(self,prices):
        inf=int(1e9)
        minprice=inf
        maxprofit=0
        for p in prices:
            maxprofit=max(p-minprice,maxprofit)
            minprice=min(p,minprice)
        return maxprofit

参考知乎
参考博客

相关推荐
默_笙1 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
qq_426003961 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫1 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技1 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读1 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
只睡四小时1 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
奇思妙想聪明勤奋的小羊1 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
lpfasd1231 天前
2026年第38周GitHub趋势周报
python·科技·github
IZero071 天前
Jev 与 Laya
python·语言模型