获取题库不需要订阅专栏,可直接私信我进入CSDN领军人物top1博主的华为OD交流圈观看完整题库、最新面试实况、考试报告等内容以及大佬一对一答疑。
题目描述
小华按照地图去寻宝,地图上被划分成 m 行和 n 列的方格,横纵坐标范围分别是 [0, n-1] 和 [0, m-1]。
在横坐标和纵坐标的数位之和不大于 k 的方格中存在黄金(每个方格中仅存在一克黄金),但横坐标和纵坐标之和大于 k 的方格存在危险不可进入。小华从入口 (0,0) 进入,任何时候只能向左,右,上,下四个方向移动一格。
请问小华最多能获得多少克黄金?
输入描述
坐标取值范围如下:
- 0 ≤ m ≤ 50
- 0 ≤ n ≤ 50
k 的取值范围如下: - 0 ≤ k ≤ 100
输入中包含3个字数,分别是m, n, k
输出描述
输出小华最多能获得多少克黄金
题目解析
小华需要在满足条件的网格中收集黄金,条件是:网格的横纵坐标数位之和不大于 ?,且横纵坐标之和不大于 ?。我们需要设计一个算法来帮助小华找到他能够到达并收集黄金的最大数量,同时避开不满足条件的网格。
算法思路
1.初始化: 创建一个 ?×?的矩阵,表示整个地图,其中1表示有黄金,0表示无黄金或不能进入的区域。
2.标记可访问区域: 遍历矩阵,根