当前位置: 首页 > news >正文

lc1031-两个非重叠子数组的最大和

题目描述

  • 给定一个数组和两个长度,找到两个符合长度的不重合的连续子数组,使其和最大

示例

输入:nums = [0,6,5,2,2,5,1,9,4], firstLen = 1, secondLen = 2
输出:20
解释:[6, 5] + [9]
输入:nums = [3,8,1,3,2,1,8,9,0], firstLen = 3, secondLen = 2
输出:29
输入:nums = [2,1,5,6,0,9,5,0,3,8], firstLen = 4, secondLen = 3
输出:31

题解

  • 思路:前缀和
    • 不妨设 子数组a 在前,子数组b 在后
    • 当 b 固定时,a 在前面范围中取最大,就得到了当前 b 对应的最大值
    • 对于每一个 b,都找到最大的 a,最后取一个 max 即可
    • 又是非常像第一题《两数之和》
func maxSumTwoNoOverlap(nums []int, firstLen int, secondLen int) int {return max(help(nums, firstLen, secondLen), help(nums, secondLen, firstLen))
}func help(nums []int, a, b int) (res int) {n := len(nums)s := make([]int, n + 1)for i := 1; i <= n; i ++ { s[i] = s[i - 1] + nums[i - 1] }for i, maxa := a + b, 0; i <= n; i ++ {maxa = max(maxa, s[i - b] - s[i - b - a])res = max(res, maxa + s[i] - s[i - b])}return
}
http://www.sczhlp.com/news/114032/

相关文章:

  • Segment Analytics-iOS SDK - 专业用户行为追踪解决方案
  • 我对 WPF 动摇时的选择:.NET Framework 4.6.2+WPF+Islands+UWP+CompostionApi - 行人-
  • 学做衣服网 缤纷网站wordpress主题模板教程
  • 江门网站关键词推广网站开发案例详解下载
  • 国外视觉设计网站国外素材网pinterest
  • 德州网站建设哪家好中国建设银行官网站信用卡管理
  • 没有自己的境外网站怎么做谷歌推广手机百度引擎搜索入口
  • 使用 Rust 与 Tesseract OCR 识别英文数字验证码
  • 外国网站在内地做seo网站做排名
  • c mvc网站开发实例教程网站运营需要 做哪些工作内容
  • 佛山网站优化软件网站内链如何布局
  • 深圳医疗网站建设报价最火wordpress主题
  • 备案 网站起名购物网站设计会员管理模块
  • 怎样做一个网站首页做网站需要什么准备
  • 湘潭网站建设方案案例seo推广代运营
  • 当当网书店网站建设案例茶山东莞网站建设
  • iis网站服务器基本安全设置步骤北京网站定制价格表
  • 重庆整合营销网站建设深圳网站建设十强
  • 优化志愿网站产品列表型网站模板
  • 别迷茫了!计算机大一新生这样做,四年后远超同龄人 - 编程实战派
  • 解决ifconfig命令没有显示ens33 finalshell连接不上虚拟机
  • 公司网站建设比较好的公司天津网站建设技术托管
  • 做网站读什么专业it外包的收益主要有哪些
  • 无法打开服务器上的网站找人做logo网站
  • 兴仁企业建站公司建设银行网站优点
  • 企业网站的完整性包括哪些二建官网报名入口
  • 网站开发环境windows7的优点做一个网页需要什么
  • 做词做曲网站网络技术课程
  • 网站界面设计案例阿里云 xampp wordpress
  • 英语写作网站高明专业网站建设报价