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

国外工装设计网站大全网站优化基本技巧

国外工装设计网站大全,网站优化基本技巧,pixso在线设计平台,北京造价员变更在哪个网站做目录 一、题目描述二、输入描述三、输出描述四、解题思路五、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/934490/

相关文章:

  • 公司需要网站 该怎么做公司推广咨询
  • 高中男女做那个视频网站seo做的好的网站
  • 网站建设 摄影服务上海seo网站排名优化公司
  • 网页设计中html代码seo博客网站
  • 怎样建设小游戏网站google关键词搜索技巧
  • 淘宝 客要推广网站怎么做全媒体广告代理
  • 那个b2b网站可以做外贸武汉全网推广
  • 深圳css3网站开发多少钱如何策划一个营销方案
  • 织梦统计网站访问量代码网络营销公司如何建立
  • 外贸营销型网站建设今日最新重大新闻
  • 个性化定制网站长春网络推广优化
  • 合肥庐阳区疫情最新消息seo优化首页
  • h5网站制作接单最新中高风险地区名单
  • 北京市住房城乡建设委网站公司怎么在网上推广
  • 网站建设首页怎样插入视频百度指数在线查询小程序
  • 青州网站制作哪家好aso优化哪家好
  • wordpress做网站优点郑州网站seo优化
  • 宝安做棋牌网站建设找哪家公司好湖南长沙疫情最新消息
  • 四川专业网站建设中国十大企业培训机构排名
  • 怎么切页面做网站灰色词首页排名接单
  • 网站右侧浮动广告代码百度推广代理公司广州
  • 固原建站公司旺道seo推广系统怎么收费
  • 适合做外链的网站海外广告联盟平台推广
  • 建筑模板规格型号郑州厉害的seo顾问
  • ppt做书模板下载网站有哪些内容国际婚恋网站排名
  • 上海网站建设内容更新网络营销策划目的
  • 重庆市建设信息网站关键词查询网
  • 做哪种网站流量大怎么打广告宣传自己的产品
  • 免费表白网站制作seo网络优化推广
  • 网站建设中可能升级中国科技新闻网