【华为校园招聘软件】2022-07-13


【编程题目 | 300分】路径 [ 2023 校园招聘 考试题 ]


编程题 第3/3题


3.路径


本题可使用本地IDE编码,不能使用本地已有代码。

无跳出限制,编码后请点击 “保存并提交” 按钮进行代码提交。


解答要求

时间限制:C/C++ 1000ms | 其他语言 2000ms

空间限制:C/C++ 256MB | 其他语言 512MB

64bit IO Format:%lld


题目描述

M*N的都是0,1,2的矩阵,M,N<=100,输出从初始位置(s_i,s_j)到最近的1的位置的路径,0能自由通行,1只能从上往下或者从下往上走到,2不能过。

同样距离的取行较小、同行再取列较小。

例:

3 4 1 1

(3行4列,初始位置第1行第1列)

0 0 0 0
2 1 0 1
0 0 0 0

输出 1 1 1 2 2 2,(1,1)->(1,2)->(2,2)


代码实现


C++


#include<iostream>
#include<vector>

using namespace std;

vector<vector<int>> ans;

剩余50%内容,订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看


JAVA


import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {
    static int M, N, minDist = Integer.MAX_VALUE;
    static int[][] parArea;

剩余50%内容,订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看