vivo游戏中心的运营小伙伴最近接到一款新游戏的上架申请,为了保障用户体验,运营同学将按运营流程和规范对其做出分析评估。经过初步了解后分析得知, 该游戏的地图可以用一个大小为 n*n 的矩阵表示,每个元素可以视为一个格子,根据游戏剧情设定其中某些格子是不可达的(比如建筑、高山、河流或者其它障碍物等),现在请你设计一种算法寻找从起点出发到达终点 的最优抵达路径,以协助运营小伙伴评估该游戏的可玩性和上手难度。-笔试面试资料

这是qklbishe.com第8433 篇笔试面试资料
提供答案分析,通过本文《vivo游戏中心的运营小伙伴最近接到一款新游戏的上架申请,为了保障用户体验,运营同学将按运营流程和规范对其做出分析评估。经过初步了解后分析得知, 该游戏的地图可以用一个大小为 n*n 的矩阵表示,每个元素可以视为一个格子,根据游戏剧情设定其中某些格子是不可达的(比如建筑、高山、河流或者其它障碍物等),现在请你设计一种算法寻找从起点出发到达终点 的最优抵达路径,以协助运营小伙伴评估该游戏的可玩性和上手难度。-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:

vivo游戏中心的运营小伙伴最近接到一款新游戏的上架申请,为了保障用户体验,运营同学将按运营流程和规范对其做出分析评估。经过初步了解后分析得知,该游戏的地图可以用一个大小为 n*n 的矩阵表示,每个元素可以视为一个格子,根据游戏剧情设定其中某些格子是不可达的(比如建筑、高山、河流或者其它障碍物等),现在请你设计一种算法寻找从起点出发到达终点的最优抵达路径,以协助运营小伙伴评估该游戏的可玩性和上手难度。
vivo游戏中心的运营小伙伴最近接到一款新游戏的上架申请,为了保障用户体验,运营同学将按运营流程和规范对其做出分析评估。经过初步了解后分析得知, 该游戏的地图可以用一个大小为 n*n 的矩阵表示,每个元素可以视为一个格子,根据游戏剧情设定其中某些格子是不可达的(比如建筑、高山、河流或者其它障碍物等),现在请你设计一种算法寻找从起点出发到达终点 的最优抵达路径,以协助运营小伙伴评估该游戏的可玩性和上手难度。 6cdh
BFS

#include <bits/stdc++.h>   using namespace std;   using pii = pair<int, int>;   int main() {     int n;     cin >> n;       pii s;     pii e;       cin >> s.second >> s.first >> e.second >> e.first;     string tmp;     getline(cin, tmp);       vector<string> m;     for (int i = 0; i != n; ++i) {         getline(cin, tmp);         m.emplace_back(move(tmp));     }       int step = 0;     deque<deque<bool>> visited(n, deque<bool>(n, false));     pii direct[4] = {{1, 0}, {-1, 0}, {0, 1}, {0, -1}};       queue<pii> q({s});     visited[s.first][s.second] = true;     while (!q.empty()) {         const int sz = q.size();         for (int i = 0; i != sz; ++i) {             const auto node = q.front();             q.pop();             if (node.first == e.first && node.second == e.second) {                 cout << step;                 return 0;             }             for (int j = 0; j != 4; ++j) {                 auto nn = node;                 nn.first += direct[j].first;                 nn.second += direct[j].second;                 if (0 <= nn.first && nn.first < n && 0 <= nn.second &&                     nn.second < n && m[nn.first][nn.second] != '#' &&                     m[nn.first][nn.second] != '@' &&                     !visited[nn.first][nn.second]) {                     q.push(nn);                     visited[nn.first][nn.second] = true;                 }             }         }         ++step;     }     cout << -1; } 

今天 11:06:48 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » vivo游戏中心的运营小伙伴最近接到一款新游戏的上架申请,为了保障用户体验,运营同学将按运营流程和规范对其做出分析评估。经过初步了解后分析得知, 该游戏的地图可以用一个大小为 n*n 的矩阵表示,每个元素可以视为一个格子,根据游戏剧情设定其中某些格子是不可达的(比如建筑、高山、河流或者其它障碍物等),现在请你设计一种算法寻找从起点出发到达终点 的最优抵达路径,以协助运营小伙伴评估该游戏的可玩性和上手难度。-笔试面试资料

提供最优质的资源集合

立即查看 了解详情