首页 > 其他分享 >【DP】【分治】最大子数组和

【DP】【分治】最大子数组和

时间:2024-05-04 23:55:28浏览次数:16  
标签:pre nums int max sum 分治 数组 DP

题源
不要太激动,过拟合,一上来就开dp,这道题只用一个变量就可以记录前缀和了

【转载】我觉得这道题目的思想是: 走完这一生 如果我和你在一起会变得更好,那我们就在一起,否则我就丢下你。 我回顾我最光辉的时刻就是和不同人在一起,变得更好的最长连续时刻

class Solution:
    def maxSubArray(self, nums: List[int]) -> int:
        n = len(nums)
        pre = 0
        max_sum = nums[0]
        for i in range(0, n):
            pre = max(nums[i], pre + nums[i])
            max_sum = max(pre, max_sum)

        return max_sum

标签:pre,nums,int,max,sum,分治,数组,DP
From: https://www.cnblogs.com/peterzh/p/18172981

相关文章

  • 【DP】乘积最大子数组
    题源思路和算法如果我们用fmax(i)来表示以第i个元素结尾的乘积最大子数组的乘积,a表示输入参数nums,那么根据「53.最大子序和」的经验,我们很容易推导出这样的状态转移方程:fmax(i)=max{f(i-1)×a[i],a[i]}它表示以第i个元素结尾的乘积最大子数组的乘积可以考虑a[i]......
  • DC-2-WordPress-git提权
    靶机概览详情介绍请参考下载地址任务目标:拿下5个flag下载地址:https://www.vulnhub.com/entry/dc-2,311/信息收集nmap信息收集1:使用nmap确定靶机地址是192.168.75.1552:继续使用nmap对靶机做进一步探测,发现靶机开启了80和7744(SSH)端口,先从80端口打开局面3:访问网站,发现URL......
  • DC-6-WordPress-nmap提权
    Vulnhub简介Vulnhub是一个提供了很多漏洞环境的靶场平台,其中的环境基本上都是做好的虚拟机镜像文件,需要使用VMware或者是VirtualBox运行。每个镜像会有破解的目标,大多是Boot2root,从启动虚拟机到获取操作系统的root权限和查看flag。靶场部署这个挑战的最终目标是获得root权限并......
  • c#数组移除同一个值
    数组移除数据,需要循环覆盖的方法。可以快慢双指针。循环一遍。publicintRemoveElement(int[]nums,intval){intn=nums.Length;intlow=0;for(inti=0;i<n;i++){if(nums[i]!=val){nums[low]=nums[......
  • 树状数组(二维偏序)
    题目链接https://leetcode.cn/problems/maximum-sum-queries/description/题目大意题目思路二维偏序问题->一维排序,一维树状数组!题目代码classSolution{public:intsz;vector<int>tr;intlowbit(intx){returnx&-x;}voidupdate(intx,intk)......
  • 05. C语言数组
    数组用于将多个数据集中存储,方便管理,此文将集中存储任何类型数据的语句都称为数组,数组根据存储数据的类型和方式分为同型数组、结构体、共用体、枚举。 【同型数组】同型数组也直接称为数组,用于存储多个类型相同的数据,数组内的数据称为数组元素,数组元素占用连续的虚拟地址,每个......
  • ORA-04063: Package Body “SYS.DBMS_CUBE_EXP” While Expdp
    1.场景数据库版本:11.2.0.4当执行@?/rdbms/admin/awrextr.sql进行awr性能分析数据导出时,报错:ORA-20115:datapumpexportencounterederror:ORA-39127:unexpectederrorfromcalltoexport_string:=SYS.DBMS_CUBE_EXP.INSTANCE_EXTENDED_INFO_EXP('AW$EXPRESS','SYS',......
  • cdq 分治
    1概念cdq分治,是一种分治思想而非具体算法。它是基于分治思想,将复杂的问题拆分求解。与一般分治算法不同的是,一般分治所拆分的子问题互相独立、互不干扰、形式与原问题一致。而在cdq分治中,每次划分出的两个子问题,是利用前面的子问题解决后面的子问题。也就是说,对于序列\([l,......
  • C# String.Split 将字符串按照指定的分隔符分割成一个字符串数组
    以下两种方式都可以分割字符串string[]arr=s.Split('\n');string[]arr=s.Split(newchar[]{'\n'},StringSplitOptions.RemoveEmptyEntries);区别:string[]arr=s.Split('\n');:这种方式使用单个字符作为分隔符,将字符串s按照换行符('\n')进行分割。但是,此......
  • CF-797-E-根号分治
    797-E题目大意给定一个长为\(n\)序列\(a\),有\(q\)次询问:给定\(p,k\),你需要反复执行操作\(p=p+a_p+k\),直到\(p>n\)为止,问你要执行多少次操作。Solution考虑两种思路:1、暴力回答询问,每次反复模拟操作,直到\(p>n\)为止,时间复杂度\(O(q·\frac{n}{k})\)。2、预处理出......