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

343整数拆分

我做的时候其实一直都没明白为什么dp[i]=dp[i]*dp[j-i]为什么不对,我用了max对了,但是相当于是凑数凑出来的,这种写法不对是因为dp[i]表示的是,这个i一定被拆分的时候,拆出来的结果是多少,但是其实不一定说必须得拆分,所以取一个max就合理了。

class Solution {
public:
int integerBreak(int n) {std::vector<int> dp(n + 1);dp[1] = 1;for (int i = 2; i < n + 1; ++i) {int max_product = -1;const int mid = (0 == i % 2) ? (i / 2) : (i / 2 + 1);for (int j = 1; j <= mid; ++j) {max_product = std::max(std::max(dp[j], j) * std::max(dp[i - j], i - j),max_product);}dp[i] = max_product;}return dp.back();
}};
http://www.dtcms.com/a/334474.html

相关文章:

  • 实例分割-动手学计算机视觉13
  • MQ积压如何处理
  • ABAP AMDP 是一项什么技术?
  • 深入理解Java虚拟机(JVM):架构、内存管理与性能调优
  • MongoDB 聚合提速 3 招:$lookup 管道、部分索引、时间序列集合(含可复现实验与 explain 统计)
  • 片料矫平机·第四篇
  • Element Plus 中 el-input 限制为数值输入的方法
  • 暴雨服务器:以定制化满足算力需求多样化
  • 深入剖析跳表:高效搜索的动态数据结构
  • 【测试工具】OnDo SIP Server--轻松搭建一个语音通话服务器
  • 社保、医保、个税、公积金纵向横向合并 python3
  • 深入理解 Vue Router
  • Centos7.9安装Dante
  • 04时间复杂度计算方法
  • Python 桌面应用形态后台管理系统的技术选型与方案报告
  • Linux系统之lslogins 命令详解
  • vector 手动实现 及遇到的各种细节问题
  • 深入剖析 TOTP 算法:基于时间的一次性密码生成机制
  • Golang分布式事务处理方案
  • 如何在win服务器中部署若依项目
  • JVM垃圾回收器
  • 深度解析Java synchronized关键字及其底层实现原理
  • python学习DAY43打卡
  • C++实战
  • 如果构建企业本地的ERP智能ai系统,让先进的大模型数据处理ERP的各类数据,更加轻松智能,准确?从企业资源计划ERP变成企业资源智能EPA的升级
  • CUDA 编程笔记:CUDA内存模型概述
  • 【数据库】Oracle学习笔记整理之五:ORACLE体系结构 - 参数文件与控制文件(Parameter Files Control Files)
  • 虚拟专用网技术
  • Gradle#构建生命周期三个阶段
  • PyTorch神经网络工具箱(如何构建神经网络?)