2023-08-08 LeetCode每日一题(任意子数组和的绝对值的最大值)

news/2025/2/12 0:23:21/

2023-08-08每日一题

一、题目编号

1749. 任意子数组和的绝对值的最大值

二、题目链接

点击跳转到题目位置

三、题目描述

给你一个整数数组 nums 。一个子数组 [numsl, numsl+1, …, numsr-1, numsr] 的 和的绝对值 为 abs(numsl + numsl+1 + … + numsr-1 + numsr) 。

请你找出 nums 中 和的绝对值 最大的任意子数组(可能为空),并返回该 最大值

abs(x) 定义如下:

  • 如果 x 是负整数,那么 abs(x) = -x 。
  • 如果 x 是非负整数,那么 abs(x) = x 。

示例 1:
在这里插入图片描述
示例 2:
在这里插入图片描述
提示:

  • 1 <= nums.length <= 105
  • -104 <= nums[i] <= 104

四、解题代码

class Solution {
public:int maxAbsoluteSum(vector<int>& nums) {int n = nums.size();int dp1[n+5];int dp2[n+5];int max0 = nums[0];int min0 = nums[0];memset(dp1, 0, sizeof(dp1));memset(dp2, 0, sizeof(dp2));dp1[0] = nums[0];dp2[0] = nums[0];for(int i = 1; i < n; ++i){dp1[i] = max(nums[i], dp1[i-1] + nums[i]);dp2[i] = min(nums[i], dp2[i-1] + nums[i]);max0 = max(dp1[i], max0);min0 = min(dp2[i], min0);}return max(abs(max0), abs(min0));}
};

五、解题思路

(1) 采用一维DP的思路解决问题。


http://www.ppmy.cn/news/1015513.html

相关文章

【数据结构与算法】十大经典排序算法-快速排序

&#x1f31f;个人博客&#xff1a;www.hellocode.top &#x1f3f0;Java知识导航&#xff1a;Java-Navigate &#x1f525;CSDN&#xff1a;HelloCode. &#x1f31e;知乎&#xff1a;HelloCode &#x1f334;掘金&#xff1a;HelloCode ⚡如有问题&#xff0c;欢迎指正&#…

Maven 打包生成Windows和Liunx启动文件

新建一个springboot项目。 1、项目结构 2、pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocati…

小程序如何使用防抖和节流?

防抖&#xff08;Debounce&#xff09;和节流&#xff08;Throttle&#xff09;都是用来优化函数执行频率的技术&#xff0c;特别在处理用户输入、滚动等频繁触发的情况下&#xff0c;它们可以有效减少函数的执行次数&#xff0c;从而提升性能和用户体验。但它们的工作方式和应…

【产品设计】消息通知系统设计

消息通知可以将内容实时送达用户手机页面&#xff0c;但是泛滥的消息通知会引起用户的反感&#xff0c;也违背了这个设计的初衷。 消息通知可以及时地将状态、内容的更新触达到用户&#xff0c;用户则可以根据收到的消息做后续判断。但是如果没有及时将重要消息触达到用户或者滥…

Unity 中检测射线穿过的所有的物体

在开发中 有个需求&#xff0c;射线要检测所有穿过的物体。 代码如下&#xff1a; using UnityEngine;public class HitCollider : MonoBehaviour {public float raycastDistance Mathf.Infinity;// Update is called once per framevoid Update(){Ray ray Camera.main.Scre…

WordPress获取文章所属分类名称或别名方法

最近在开发WordPress主题的时候&#xff0c;想要获取到文章所属分类名称或别名&#xff0c;想了半天没想到&#xff0c;于是去百度了下&#xff0c;马上就得到答案了。 非常简单&#xff0c;WordPress本身自带一个函数可以调出分类别名和链接&#xff1a; <?php the_cate…

C语言--结构体指针

结构体指针变量 引入&#xff1a; 指针就是地址&#xff0c;指针变量就是存放地址的变量 int a; int *p; p&a; 结构体也是变量 变量访问有两种方式&#xff1a;1.变量名 2.地址 struct Test t; struct Test *P; p&t; 通过结构体指针访问结构体&#xff1a;用’->来访…

2208. 将数组和减半的最少操作次数

2208. 将数组和减半的最少操作次数 给你一个正整数数组 nums 。每一次操作中&#xff0c;你可以从 nums 中选择 任意 一个数并将它减小到 恰好 一半。&#xff08;注意&#xff0c;在后续操作中你可以对减半过的数继续执行操作&#xff09; 请你返回将 nums 数组和 至少 减少一…