leetcode 2684. 矩阵中移动的最大次数

embedded/2025/2/21 5:31:22/

题目如下
在这里插入图片描述

数据范围
在这里插入图片描述

本题使用常规动态规划就行,不过要注意由于有三个转移的方向,所以我们对dp数组的遍历应该是从上到下 从左到右即按列优先遍历。

通过代码

class Solution {
public:int maxMoves(vector<vector<int>>& grid) {int n = grid.size();int m = grid[0].size();vector<vector<int>> dp(n,vector<int>(m,0));int ans = 0;for(int j = 1;j < m;j++){for(int i = 0;i < n;i++){if(j > 0 && grid[i][j] > grid[i][j - 1])dp[i][j] = max(dp[i][j],dp[i][j - 1] + 1);if(j > 0 && i > 0 && grid[i][j] > grid[i - 1][j - 1])dp[i][j] = max(dp[i][j],dp[i - 1][j - 1] + 1);if(j > 0 && i + 1 < n && grid[i][j] > grid[i + 1][j - 1])dp[i][j] = max(dp[i][j],dp[i + 1][j - 1] + 1);             if(dp[i][j] == 0)dp[i][j] = -1000000;//对于到不了的地方应该标记以防被后面的块作为有效路径算入ans = max(ans,dp[i][j]);}}/*for(int i = 0;i < n;i++){for(int j = 0;j < m;j++){cout << dp[i][j] << " ";}cout << endl;}*/return ans;}
};
//tips 当然本题同样可以利用滚动数组的思想用一维数组来存储上一轮的数组 这里不多赘述

在这里插入图片描述


http://www.ppmy.cn/embedded/162292.html

相关文章

【数据结构-Tire树】力扣1268. 搜索推荐系统

给你一个产品数组 products 和一个字符串 searchWord &#xff0c;products 数组中每个产品都是一个字符串。 请你设计一个推荐系统&#xff0c;在依次输入单词 searchWord 的每一个字母后&#xff0c;推荐 products 数组中前缀与 searchWord 相同的最多三个产品。如果前缀相同…

CSS实现与文字长度相同的下划线

可以使用伪元素和一些样式属性来实现与文字长度相同的下划线。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">&…

网络安全配置截图

概念及规范 1.网络安全定义 网络安全的概述和发展历史 网络安全 广义的网络安全&#xff1a;Cyber Security&#xff08;网络空间安全&#xff09; 网络空间有独立且相互依存的信息基础设施和网络组成&#xff0c;包括互联网、电信网、计算机系统、嵌入式处理器和控制器系统…

Android Studio:RxJava事件流Observable

一、什么是“事件流”&#xff1f; 简单来说&#xff0c;事件流 就是数据从一个地方&#xff08;发布者&#xff09;传递到另一个地方&#xff08;订阅者&#xff09;的过程&#xff0c;像是一个“流水线”。发布者发布事件&#xff08;数据&#xff09;&#xff0c;订阅者则在…

驱动开发系列36 - Linux Graphics 2D 绘制流程

一: 概述 在Linux中,2D绘制流程是操作系统、图形库、显示协议、驱动程序等多个组件协调工作的结果。整体流程如下步骤所示: 1. 客户端请求:客户端程序(如GTK、Qt应用程序)通过X11协议与Xorg-Server通信(或通过Wayland协议与Wayland合成器通信)、请求绘制2D图形,比如绘制…

Docker+Jenkins自动化部署SpringBoot项目【详解git,jdk,maven,ssh配置等各种配置,附有示例+代码】

文章目录 DockerJenkins部署SpringBoot项目一.准备工作1.1安装jdk111.2安装Maven 二.Docker安装Jenkins2.1安装Docker2.2 安装Jenkins2.3进入jenkins 三.Jenkins设置3.1安装jenkins插件3.2全局工具配置全局配置jdk全局配置maven全局配置git 3.3 系统配置安装 Publish Over SSH …

shell学习

shell学习 1、运行shell脚本的方法1.1、作为可执行程序1.2、作为解释器参数 2、shell变量2.1、变量的命名规则2.1.1、使用变量2.1.2、只读变量2.1.3、删除变量2.1.4、变量类型2.1.4.1、字符串变量2.1.4.2、整数变量2.1.4.3、数组变量2.1.4.4、环境变量2.1.4.5、特殊变量 2.2、s…

蓝桥杯篇---温度传感器 DS18B20

文章目录 前言DS18B201. DS18B20 引脚说明2. 单总线通信协议3. DS18B20 操作流程初始化写操作读操作 4. 示例代码5. 代码说明6. 注意事项总结 前言 以上就是今天要讲的内容&#xff0c;本文简单介绍了IAP15F2K61S2中温度传感器模块DS18B20的使用。 DS18B20 DS18B20 是一款数字…