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

划分型dp+倍率转换为后缀

前言:写这个题目的时候想了好久,但是只能想到一个复杂度为 n 3 n^3 n3的写法,最外层的循环枚举分割的次数(最多为1000),里层的循环分别枚举左边界和右边界,其实这么麻烦就是为了解决i*k的问题

正确的思路应该是转换成后缀来写


题目地址

在这里插入图片描述

在这里插入图片描述

class Solution:
    def minimumCost(self, nums: List[int], cost: List[int], k: int) -> int:
        n = len(nums)
        s = list(accumulate(cost, initial=0))  # cost 的前缀和
        f = [0] * (n + 1)
        for i, sum_num in enumerate(accumulate(nums), 1):  # 这里把 i 加一了,下面不用加一
            f[i] = min(f[j] + sum_num * (s[i] - s[j]) + k * (s[n] - s[j])
                       for j in range(i))
        return f[n]

要注意下标问题

相关文章:

  • 做两个阿里网站武汉seo人才
  • 企业网站营销如何建设软文营销广告
  • 烟台企业做网站推广网站源码
  • 微信小程序代码怎么弄山西优化公司
  • 如何建设网站与域名微网站建站平台
  • 网站中的flash广告外链平台
  • VMware+Ubuntu+VScode+ROS一站式教学+常见问题解决
  • SpringBoot集成Log4j2终极指南:从基础配置到性能调优
  • 线性回归算法
  • YOLOv11模型的常见处理
  • qml语法解释
  • 课程分享 | 软件供应链安全的系统工程
  • MOS管阈值电压Vgs(th)与温度的关系:负温度系数探讨
  • STM32F103_LL库+寄存器学习笔记12 - 提高串口通讯程序的健壮性:异常监控 + 超时保护机制
  • Muduo网络库实现 [二] - Buffer模块
  • 计算机组成原理————计算机运算方法精讲<1>原码表示法
  • P4551 最长异或路径
  • c++生成html文件helloworld
  • 智能体开发平台与大模型关系图谱
  • 经典论文解读系列:MapReduce 论文精读总结:简化大规模集群上的数据处理
  • SpringBoot条件装配注解
  • 网络原理-TCP/IP
  • rviz可视化(一、可视化点云)
  • 4. Flink SQL访问HiveCatalog
  • <em>凤</em><em>凰</em><em>购</em><em>彩</em><em>大</em><em>厅</em>
  • 三个核心文件:src\App.vue文件,index.html文件,src\main.js文件 的关系与运行流程解析(通俗形象)