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

外包加工网站有哪些百度一下的网址

外包加工网站有哪些,百度一下的网址,台州建设规划局网站,怎么查看网站是asp还是php动态规划解决剑指 Offer 47题:礼物的最大价值 1. 题目链接 剑指 Offer 47. 礼物的最大价值 2. 题目描述 在一个 m x n 的棋盘的每一格都放有一个礼物(价值非负),从棋盘的左上角出发,每次向右或向下移动一格&#x…

动态规划解决剑指 Offer 47题:礼物的最大价值

1. 题目链接

剑指 Offer 47. 礼物的最大价值

2. 题目描述

在一个 m x n 的棋盘的每一格都放有一个礼物(价值非负),从棋盘的左上角出发,每次向右或向下移动一格,直到到达右下角。给定一个棋盘,计算从起点到终点所能拿到的礼物价值的最大总和。

示例

  • 输入:
    [ [1,3,1], [1,5,1], [4,2,1] ]
  • 输出:12
  • 解释:最优路径为 右 → 右 → 下 → 下,总和为 1 + 3 + 5 + 2 + 1 = 12

3. 示例分析

以示例输入为例:

  1. 起点 (0,0) 的值为 1,下一步可以选择向右到 (0,1) 或向下到 (1,0)
  2. 动态规划表 dp 会记录每个位置的最大累计值。
  3. 最终 dp[3][3](对应棋盘右下角)的值为 12,即最优路径的总和。

4. 算法思路

动态规划状态定义

  • 定义 dp[i][j] 表示从起点 (0,0) 到达棋盘位置 (i-1, j-1) 的最大累计价值(索引从 1 开始以避免越界)。

状态转移方程

  • 每个位置的最大价值等于其左侧或上侧的最大值加上当前格子的价值:
    dp[i][j] = frame[i-1][j-1] + max(dp[i-1][j], dp[i][j-1])

初始化技巧

  • 由于棋盘起点为 (0,0),对应的 dp[1][1] 初始化为 frame[0][0]。通过将 dp 数组的维度设为 (m+1) x (n+1),并隐式初始化为 0,避免了显式处理边界条件。

5. 边界条件与注意事项

  1. 空输入处理:若棋盘为空(m=0n=0),需返回 0(代码中未显式处理,实际应用需补充)。
  2. 单行或单列棋盘:路径唯一,直接累加所有值即可。
  3. 负价值场景:题目假设礼物价值非负,若允许负值需考虑路径选择逻辑是否变化。

6. 代码实现

class Solution {
public:int jewelleryValue(vector<vector<int>>& frame) {int m = frame.size(), n = frame[0].size();// 处理空输入的特殊情况if (m == 0 || n == 0) return 0;vector<vector<int>> dp(m + 1, vector<int>(n + 1, 0));for (int i = 1; i <= m; i++) {for (int j = 1; j <= n; j++) {dp[i][j] = frame[i-1][j-1] + max(dp[i-1][j], dp[i][j-1]);}}return dp[m][n];}
};

代码解析

  1. 输入检查:添加了对空棋盘的处理,避免访问非法内存。
  2. 动态规划表填充:双重循环遍历每个位置,通过 max 函数选择左侧或上侧的最大路径值。
  3. 返回值dp[m][n] 对应棋盘右下角的最大累计价值。

时间复杂度O(mn),需遍历整个棋盘。
空间复杂度O(mn),动态规划表的空间开销。

通过动态规划逐格递推,代码简洁且高效,完美解决了棋盘最大路径和问题。

http://www.dtcms.com/wzjs/388958.html

相关文章:

  • 太原网站建设世纪优创重庆网站seo建设哪家好
  • 媒体网站推广方法阿里云免费域名
  • 西安做网站选哪家重庆今天刚刚发生的重大新闻
  • 五台建设局网站软文案例200字
  • 网站制作分工手机制作网页用什么软件
  • 网站用的服务器广告发布平台
  • 浙江正规网站建设配件如何注册网站
  • 新手站长如何购买虚拟主机做网站今天新疆新闻头条
  • idea建设完整的网站杭州做seo的公司
  • 烟台专业网站建设公司班级优化大师手机版下载
  • 网站建设网页制作软件海外推广方法有哪些
  • 家具做网站正规代运营公司
  • 网站页面建设方案书模板seo优化方式
  • 专门做建筑设计图库的网站设计外链群发
  • 恒锐奇 做网站设计网站模板
  • 给别人做设计的网站江门seo外包公司
  • 敬请期待海报邯郸网站seo
  • 武汉百度网站推广谷歌seo搜索优化
  • 用网站做微信公众号免费自助建站
  • 北京建筑设计公司前十名槐荫区网络营销seo
  • 闸北网站建设搜索引擎优化的具体措施
  • 企业网站建设 属于什么费用今日足球赛事推荐
  • 空间坐标系做图网站广东疫情最新消息
  • 网站滚动条代码短视频seo代理
  • 做网站用什么服务器自己建网站
  • 社保网站做的真烂做专业搜索引擎优化
  • 怎么做返利网站软文发布软件
  • 服务器租用网站免费开通网站
  • 石家庄制作网站推广搜索引擎有哪些平台
  • 手机建站平台哪个便宜写软文平台