尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

2026华为OD面试题073:中庸行者

2026华为OD面试题073:中庸行者 题目描述给定一个 m*n 的整数矩阵作为地图,矩阵数值为地形高度。中庸行者选择地图中的任意一点作为起点,尝试往上、下、左、右四个相邻格子移动。移动时有如下约束:中庸行者只能上坡或者下坡,不能走到高度相同的点不允许连续上坡或者连续下坡,需要交替进行每个位置只能经过一次,不能重复行走请给出中庸行者在本地图内能连续移动的最大次数。输入描述:第一行两个数字,分别为行数 m 和每行的列数 n。接下来 m 行,每行 n 个整数表示地形高度。输出描述:能连续移动的最大次数。讲个故事:上山下山不重样有个徒步爱好者给自己立了三条规矩:每一步要么往上爬要么往下走,不能走平地;不能连续两步都上坡或都下坡,得一上一下交替;走过的格子不再踩。他想在这个地形图里走出最长的一条路,问最多能走多少步。比如 1 上 3 是上坡,下一步就得下坡,比如 3 下 2,再上坡……一路交替着走,直到走不动为止。说白了就是在格子上找一条最长的高低交替路径,每个格子只走一次。核心原理:DFS 回溯找最长交替路径从每个格子出发尝试,用 DFS 枚举所有合法走法:走到相邻格,高度必须不同(不能平走)这一步的方向(上坡或下坡)必须和上一步相反走过的格子标记,回溯时取消标记每走一步计数加 1,记录全局最大值。因为是"每个格
返回列表