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

Leetcode 3654. Minimum Sum After Divisible Sum Deletions

  • Leetcode 3654. Minimum Sum After Divisible Sum Deletions
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3654. Minimum Sum After Divisible Sum Deletions

1. 解题思路

这一题思路上就是一个动态规划的思路,我们考虑每一个位置的情况,其如果要保留,那么我们就考虑其下一个位置的情况,如果要删除,那么就会一下子删除到其下一个与当前位置前序和对kkk同余的位置上。

因此,我们很快就能写出迭代公式,然后进行动态规划即可。

2. 代码实现

给出python代码实现如下:

class Solution:def minArraySum(self, nums: List[int], k: int) -> int:if k == 1:return 0n = len(nums)remains = [0 for _ in range(n+1)]boundries = defaultdict(list)boundries[0].append(0)for i in range(n):remains[i+1] = (remains[i] + nums[i]) % kboundries[remains[i+1]].append(i+1)if len(boundries) == 1:return 0@lru_cache(None)def dp(idx):if idx >= n:return 0ans = math.infj = bisect.bisect_right(boundries[remains[idx]], idx)if j < len(boundries[remains[idx]]):r = boundries[remains[idx]][j]ans = min(ans, dp(r))if ans == 0:return ansif ans > nums[idx]:ans = min(ans, nums[idx] + dp(idx+1))return ansreturn dp(0)

提交代码评测得到:耗时1677ms,占用内存158.82MB。

http://www.dtcms.com/a/338937.html

相关文章:

  • 【多模态大模型的三化】
  • [PV]AXI R/W/RW带宽计算的tcl脚本
  • AI赋能商业数据分析:从海量数据挖掘到智能决策洞察,激活企业增长新动能
  • Redisson 分布式锁核心机制解析
  • Flink原理与实践:第一章大数据技术概述总结
  • 微软行业案例:英格兰足球超级联赛(Premier League)
  • 丝杆支撑座在自动化生产线中的关键支撑
  • arcgis-提取范围中最大占比面积的信息或唯一值
  • Jenkins服务器SSH公钥配置步骤
  • nodejs koa框架使用
  • 计算机大数据毕业设计推荐:基于Spark的气候疾病传播可视化分析系统【Hadoop、python、spark】
  • 《算法导论》第 30 章:多项式与快速傅里叶变换(FFT)
  • vue3中封装hooks
  • uniapp 应用未安装:软件包与现有软件包存在冲突
  • GEO 优化专家孟庆涛:技术破壁者重构 AI 时代搜索逻辑
  • Flask 路由与视图函数绑定机制
  • 正式签约 | OpenLoong 项目正式捐赠至开放原子开源基金会,成为全国首个具身智能方向孵化项目!
  • 【图像算法 - 18】慧眼辨良莠:基于深度学习与OpenCV的麦田杂草智能识别检测系统(附完整代码)
  • 哈希:两数之和
  • Mac(七)右键新建文件的救世主 iRightMouse
  • python将epub文件转pdf
  • UniApp 实现pdf上传和预览
  • 大模型级部署:从本地轻量化到云原生方案
  • 基于单片机智能密码锁/密码箱/门锁/门禁系统
  • Python爬虫实战:研究ICP-Checker,构建ICP 备案信息自动查询系统
  • PiscCode迅速集成YOLO-Pose 实现姿态关键点轨迹跟踪应用
  • 从繁琐到优雅:Java Lambda 表达式全解析与实战指南
  • 第1章 React组件开发基础
  • JxBrowser 8.10.0 版本发布啦!
  • iOS App 混淆工具实战,教育培训类 App 的安全保护方案