塔子哥在一个 m∗n 大小的崎岖山地上进行跑步锻炼。这个场地由一系列的上坡、下坡组成,场地各点位的高度值记录于二位数组 h 中,由相邻位置到达对应点位的减速值记录于二维数组 o中。
已知塔子哥初始速度为 1 ,当他从高度为 h1 的位置跑到高度为 h2 、减速值为 o2 的相邻位置(可从上下左右四个方向)时,速度变化值为 h1−h2−o2 ( 大于 0 为加速 ,小于 0为减速)。速度不会为 0 或者负值。
请问塔子哥到达哪些点位时速度依旧维持为 1 ?请你求出这些位置的个数是多少。
塔子哥在一个 m×n 的崎岖山地上进行跑步锻炼,场地的高度和减速值分别由二维数组 h 和 o 记录。塔子哥初始速度为 1,当他从高度为 h1 的位置移动到高度为 h2 的相邻位置时,速度变化为 h1−h2−o2,其中 o2 是目标位置的减速值。任务是计算塔子哥能够到达的速度仍为 1 的位置数量。输入包含场地的大小、塔子哥的初始位置、高度值数组和减速值数组,输出为速度为 1 的位置的个数。
这是一道基于BFS的题目。主要考点为BFS。
这道题要我们找到所有速度为1的终点站的点的数量。那么我们需要知道所有终点站的速度,然后在这些速度中找到为1的点即可。