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

一个一起做网站百度关键词竞价价格

一个一起做网站,百度关键词竞价价格,手机网站的后台管理,东莞是不是有疫情目录 一、题目描述二、输入描述三、输出描述四、解题思路五、JavaScript算法源码六、效果展示1、输入2、输出 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试&am…

在这里插入图片描述

目录

    • 一、题目描述
    • 二、输入描述
    • 三、输出描述
    • 四、解题思路
    • 五、JavaScript算法源码
    • 六、效果展示
      • 1、输入
      • 2、输出

华为OD机试 2023B卷题库疯狂收录中,刷题点这里

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

一、题目描述

现有一个机器人,可放置于 M × N的网格中任意位置,每个网格包含一个非负整数编号。当相邻网格的数字编号差值的绝对值小于等于 1 时,机器人可在网格间移动

问题:求机器人可活动的最大范围对应的网格点数目。

说明:

1)网格左上角坐标为 (0, 0),右下角坐标为 (m-1, n-1)

2)机器人只能在相邻网格间上、下、左、右移动

示例1,输入如下网格

输出:6

说明:图中绿色区域,相邻网格差值绝对值都小于等于1,且为最大区域,对应网格点数目为6

示例 2,输入如下网格:

输出:1

二、输入描述

第1行输入为M和N,M表示网格的行数,N表示网格的列数。

之后M行表示网格数值,每行N个数值(数值大小用k表示),数值间用单个空格分隔,行首行尾无多余空格。

M、N、k均为整数,且1<=M,N<=150,0<=k<=50。

三、输出描述

输出1行,包含1个数字,表示最大活动区域对应的网格点数目

行末无多余空格

四、解题思路

  1. 读取输入的网格行数 M 和列数 N;
  2. 创建一个二维数组 region,用于表示网格;
  3. 读取输入的网格数值,并将其存储到 region 数组中;
  4. 初始化最大活动区域对应的网格点数目 max 为 0;
  5. 遍历网格中的每个网格点,以每个网格点为起点进行深度优先搜索;
  6. 在深度优先搜索过程中,判断当前网格点的数值是否有效:
    • 如果当前网格点的数值为 -1,表示该网格点已经访问过,直接返回 0;
    • 如果当前网格点的数值与起点网格点的数值的差的绝对值大于 1,表示不满足相邻网格差值的要求,直接返回 0;
  7. 将当前网格点的数值设为 -1,表示已经访问过该网格点;
  8. 递归调用深度优先搜索函数,分别向上、下、左、右四个方向移动,并将每次递归返回的结果累加到 count 变量中;
  9. 返回最终的 count 值;
  10. 更新最大活动区域对应的网格点数目 max,取当前网格点的 count 值与 max 的较大值;
  11. 输出最大活动区域对应的网格点数目 max;

五、JavaScript算法源码

let region;
let M;
let N;function calculateMaxRegion(m, n, grid) {M = m;N = n;region = [];for (let i = 0; i < M; i++) {region[i] = [];for (let j = 0; j < N; j++) {region[i][j] = grid[i][j];}}let max = 0;for (let i = 0; i < M; i++) {for (let j = 0; j < N; j++) {if (region[i][j] !== -1) {max = Math.max(max, move(i, j, region[i][j]));}}}return max;
}function move(row, col, num) {if (row < 0 || col < 0 || row >= M || col >= N) {return 0;}const currentNum = region[row][col];if (currentNum === -1 || Math.abs(currentNum - num) > 1) {return 0;}region[row][col] = -1;let count = 1;count += move(row - 1, col, currentNum);count += move(row + 1, col, currentNum);count += move(row, col - 1, currentNum);count += move(row, col + 1, currentNum);return count;
}

六、效果展示

1、输入

2 3
1 3 5
4 1 3

2、输出

1


🏆下一篇:华为OD机试真题 JavaScript 实现【贪心的商人】【2023Q1 100分】

🏆本文收录于,华为OD机试(JavaScript)真题(A卷+B卷)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述

http://www.hkea.cn/news/787771/

相关文章:

  • 国外 上海网站建设网络营销推广方式案例
  • 24手表网站网络技术推广服务
  • 鞍山网站制作推广游戏推广员判几年
  • 360如何做网站优化网页设计制作软件
  • 金华网站建设电话电商运营主要负责什么
  • 百度的官方网站游戏推广工作好做吗
  • 著名的深圳网站建设网页快照
  • 政务网站建设要求快速排名软件哪个好
  • 自己网站怎么做优化色盲和色弱的区别
  • 苏州建网站公司seo网络推广培训班
  • 福清市建设局网站石家庄学院
  • 找考卷做要去哪个网站中国国家培训网官网查询
  • 软件系统开发的大概步骤优化网站标题名词解释
  • 院校网站建设模板建站平台
  • 淘宝网站内搜索引擎优化怎么做广告推广平台网站有哪些
  • 大片播放网站国外免费推广网站有哪些
  • flash网站cms排名sem优化软件
  • 申请完域名怎么做网站百度链接提交
  • 驻马店市可以做网站的公司百度搜索竞价排名
  • 郑州市做网站吉林百度查关键词排名
  • 济宁网站建设seo抖音seo源码搭建
  • 茂名网站建设方案书简述seo和sem的区别
  • 江西网站做的好的企业文化百度指数在哪里看
  • 山东电商网站建设seo网站排名优化公司
  • 赤峰市做网站公司今日的最新消息
  • 上海最大的贸易公司seo网络推广机构
  • jsp 网站开发广告发布平台
  • b2c网站综合对比评价站长统计幸福宝
  • 网站建设意见做推广app赚钱的项目
  • 哈尔滨营销网站制作做外贸推广