LeetCode 343. 整数拆分——动态规划

news/2025/3/6 23:30:34/文章来源:https://www.cnblogs.com/xiins/p/18756777

343. 整数拆分

提示

给定一个正整数 n ,将其拆分为 k正整数 的和( k >= 2 ),并使这些整数的乘积最大化。

返回 你可以获得的最大乘积

示例 1:

输入: n = 2
输出: 1
解释: 2 = 1 + 1, 1 × 1 = 1。

示例 2:

输入: n = 10
输出: 36
解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。

提示:

  • 2 <= n <= 58

题解

class Solution {
public:int integerBreak(int n) {vector<int> dp(n + 1, 0);  // 初始化为0,避免初始值干扰dp[0]=1;dp[1]=1;dp[2]=1;for (int i = 3; i <= n; ++i) {for (int j = 1; j < i; ++j) {// 比较直接拆分(j*(i-j))和继续拆分(j*dp[i-j])dp[i] = max(dp[i], max(j * (i - j), j * dp[i - j]));}}return dp[n];}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/894873.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025.3.6 起步

今天学习了web安全的基本知识 1,http,一种协议,常用TCP 2,http的请求方法(GET/POST/PUT...)和请求状态(200 OK/404 NOT FOUND...) 3,URL网址,及其组成 4,UA头,User-Agent,可以知道操作系统、CPU、浏览器类型 5,BurpSuite抓包返回包,可以得到很多信息6,Referer,告诉…

《AI时代生存手册:零基础掌握DeepSeek》 - PDF免费下载

通过本书,你将轻松上手DeepSeek,开启智能生活新篇章。通过本书,你将学会用Deepseek大幅提升工作效率,告别烦琐,拥抱高效。通过本书,你将学会如何让Deepseek成为您的职场超级助手。通过本书,你将学会如何利用DeepSeek激发自己的创作灵感,打造爆款内容,打造个人品牌。通…

Hive安装--本地模式

系统版本:CentOS Linux release 7.9.2009 (Core)ps: 最小化安装一、安装MySQL 1.下载 1.1安装包 官网:https://downloads.mysql.com/archives/community/1.2驱动 官网:https://downloads.mysql.com/archives/c-j/ps mysql-connector-java-5.1.47.jar,要这个2.安装 2.1安装依…

极空间docker部署Ghost博客

1. 下载镜像搜索不到、下载不了的请挂代理或者换源2. 编辑容器 2.1 将content路径映射到nas本地2.2 映射本地端口到ghost端口 注意:极空间限制了3000以内的端口不可外部访问,所以要设置成>3000的端口,我这里设置的33682.3 配置环境变量 这里我选择sqlite3作为数据库,url…

19C++循环结构-多重循环(2)-——教学

1、三重循环与程序的优化; 2、四重循环; 3、超市收费程序一、三重循环与程序的优化 教学视频 百钱买百鸡 3文钱可以买1只公鸡,2文钱可以买1只母鸡,1文可以买3只小鸡,要用100文买100只(每种鸡必买1只)。 试编一程序,求公鸡,母鸡、小鸡各有多少只? 如果100文钱全部买公…

fastadmin + workman 实现websocket前后端通信http

1.安装workman扩展composer require workerman/workerman2.安装think-workercomposer require topthink/think-worker=1.0.* 3.如果在windows下使用,还需下载composer require workerman/workerman-for-win4.根目录创建server.php 。用来启动服务#!/usr/bin/env php <?php…

日报202536

继续学习了Springboot,感觉有点麻烦:User package com.xxx.demo1.pojo;public class User {String id;String name;@Overridepublic String toString() {return "User{" +"id=" + id + \ +", name=" + name + \ +};}public String getId() {re…

[JLOI2014] 路径龟划

传送门 我的部落格 貌似没有比较通俗介绍红绿灯期望介绍方法的?我来一发不需要积分基础能看懂的严谨证明~ 题目大意 这道题 luogu 题面不太清晰,大意给定一张无向图,你需要开车从起点走到终点,有些点会设红绿灯,给出每个红绿灯的红灯时间和绿灯时间,你见到红绿灯时红绿灯…

Vue 脚手架发展

Vue 脚手架是一个基于 Vue.js 进行快速开发的完整系统,Vue 脚手架致力于将 Vue 生态中的工具基础标准化。Vue 的工具链 CLI(通常指 @vue/cli)与 create-vue 是 Vue 生态中两个不同的脚手架工具,它们在功能定位、技术栈和适用场景上有显著区别。 Vue CLI(@vue/cli) Vue CL…

18C++循环结构-多重循环(1)

1、循环的嵌套; 2、双重循环的应用一、循环的嵌套 问题:#include <iostream> using namespace std; int main() {int j;for(j=1;j<=5;j++)cout<<*;return 0; }再编一程序,每次输出3行,每行5个"*"号。 在外层加一个循环语句来实现;流程图如:#inc…

Mybatis-plus01--快速开始

前言 在编写Java开发过程中,尤其是CRUD开发,我们会发现大部分事件都在编写Java持久层的增删改查上了,并且配置mybatis的mapper文件也是一件麻烦的事。如果你也有这样的烦劳,看来就可以认识一下我们的新朋友mybatis-plus了。 MyBatis-Plus 是一个 Mybatis的增强工具,在 MyB…