首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
憨人要找个好工作
2016-09-25 21:44
华东师大 安卓
关注
已关注
取消关注
跪求大神教一题动态规划
不记得是滴滴还是哪里的一道笔试题。
m*n的个格子,1代表可以走,0不可以走,
一个机器人从(0,0)走到(0,n-1),机器人本身的能量为p
现在机器人向下走不消耗能量,向上走消耗3个能量,向右走消耗1个能量
问能量p能够支撑机器人到达终点?
跪求大神用java写一个答案~
谢谢了,在线等。
提示
全部评论
推荐
最新
楼层
S12
复旦大学 C++
//C++语法跟Java蛮像得,凑合着参考下? #include<iostream> #include<vector> #include<queue> using namespace std; class Axis { public: int row, col; Axis(){} Axis(int r, int c): row(r), col(c){} Axis(const Axis & a): row(a.row), col(a.col){} bool operator==(const Axis & a) const { return (row == a.row) && (col == a.col); } void print() const{ cout << '[' << row << ',' << col << ']'; } Axis left() const { return Axis(row, col - 1); } Axis right()const { return Axis(row, col + 1); } Axis up() const { return Axis(row - 1, col); } Axis down()const { return Axis(row + 1, col); } }; void findPath(vector<vector<int>> &Map, vector<vector<Axis>> &allpaths, vector<Axis> & path, Axis start, Axis end, int p) { path.push_back(start); if (start == end) { allpaths.push_back(path); return; } if (p <= 0) return; Axis left = start.left(); Axis right = start.right(); Axis up = start.up(); Axis down = start.down(); Map[start.row][start.col] = 0; if (left.col >= 0 && (Map[left.row][left.col] == 1)) { findPath(Map, allpaths, path, left, end, p - 1); } if (right.col < Map[0].size() && (Map[right.row][right.col] == 1)) { findPath(Map, allpaths, path, right, end, p - 1); } if (up.row >= 0 && (Map[up.row][up.col] == 1)) { findPath(Map, allpaths, path, up, end, p - 3); } if (down.row < Map.size() && (Map[down.row][down.col] == 1)) { findPath(Map, allpaths, path, down, end, p); } Map[start.row][start.col] = 1; } bool findPath(vector<vector<int>> &Map, vector<Axis> &path, int p) { if (Map.empty()) return false; if (Map[0].empty()) return false; int m = Map[0].size(); vector<vector<Axis>> allpaths; vector<Axis> apath; findPath(Map, allpaths, apath, Axis(0, 0), Axis(0, m - 1), p); if (allpaths.empty())return false; int minSize = 100000, minIndex; for (int i = 0; i < allpaths.size(); ++i) { if (allpaths[i].size() < minSize) { minSize = allpaths[i].size(); minIndex = i; } } path = allpaths[minIndex]; return true; } int main() { int n, m, p; cin >> n >> m >> p; vector<vector<int>> Map(n, vector<int>(m)); for (int i = 0; i < n; ++i) for (int j = 0; j < m; ++j) cin >> Map[i][j]; vector<Axis> path; bool success = findPath(Map, path, p); if (!success) {cout << "Can not escape!" << endl; return 0;} for (int i = 0; i < path.size(); i++) { path[i].print(); if (i != path.size() - 1) cout << ','; } return 0; }
点赞
回复
分享
发布于 2016-09-25 22:26
xiaoguang
阿里巴巴_本地生活饿了么_研发
你要java我就给不了你,就搜索搞搞,不是dp
点赞
回复
分享
发布于 2016-09-25 22:10
Earther01
南京邮电大学 C++
这不是滴滴笔试的题么?用dfs暴力就能过..
点赞
回复
分享
发布于 2016-09-25 22:00
FINACK
微策略_软件工程师
我发过帖子
点赞
回复
分享
发布于 2016-09-25 21:47
暂无评论,快来抢首评~
相关推荐
07-22 01:07
门头沟学院 后端
一文解析 Protobuf 好在哪里。
一、什么是protobuf:数据序列化的一种方式Protocol Buffers(通常缩写为 protobuf),它是 Google 开发的一种高效、跨平台的结构化数据序列化机制。1.1 Protobuf的优点它主要有四个好处:1,空间小+速度快。空间小,指的是序列化后二进制数据的大小,和json、xml相比,占用的空间更小。速度快,指的是序列化、反序列化的速度,和json、xml相比更快。(和protobuf的二进制编码方式有关)2,跨语言性好。使用 .proto 文件定义数据结构后,可以使用官方或社区提供的编译器 (protoc) 生成多种编程语言(如 C++, C#, Go, Java,...
点赞
评论
收藏
分享
07-23 23:58
广东海洋大学 Java
27双非简历求拷打
按照现有的技术栈和项目拓展了一下,有点水分,准备阉割一部分拿去找小厂练面试。外卖项目要不要删?删了怕项目技术栈能覆盖的八股有点少佬们拷打拷打给点意见
点赞
评论
收藏
分享
07-07 17:06
已编辑
深圳技术大学 golang
双非大二拿下腾讯实习offer
终于拿下腾讯offer,同时给大伙释放一个b站hc
Joefoo:
b站的录用通知好中二
点赞
评论
收藏
分享
07-10 17:26
南京工业职业技术大学 机械设计/制造
26届毕业生,想问一下大佬们有什么地方要改的😭😭
机械打工仔:
不管啥专业,找工作改简历的第一课先把你那排版改了,简历上不要写个人简历四个字,找你要简历的谁不知道这个是简历?而且还占那么多空间,直接把自己名字和基础信息写上面,整体字体大一些。 还有这种经典两页简历一页大空白,导出PDF的时候多了一页几乎全是白的你自己看着不难受吗
随手的事为啥不能改掉呢,这是态度问题,你试想一下你是HR你打开简历看到格式都没调整过会是什么感受?你自己都不重视你的简历,HR更不会在意。 然后内容你那个做两年咖啡就别往里写了,简历在精不在多,你在往你的简历里打字的时候就要想好这东西对你要找的工作有没有帮助。自我评价写一行就行了,不如给专业技能单开一栏。核心课程均分90这个真别写了,把你上过的有用的专业课列出来也行。有很多地方废话很多的精炼一下,比如你校内项目第一个写的那些,全然没有重点。 好好修改一下,我看你内容也挺优秀的,别被一个随便做的简历耽误了,我一个同专业的打工人看了都揪心更别说一天看几百份简历的HR
听劝,我这个简历该怎么改...
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
07-24 13:32
现在问不得一点了是吧
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
不懂来大厂实习究竟能学到啥?
3943
2
...
滴滴提前批一二三面凉经
3716
3
...
科大讯飞-飞星计划-后端笔试
3599
4
...
28届求助,想本科就业
2947
5
...
鹅厂提前批一面秒挂
2705
6
...
百度提前批一面:面试官居然让我手撕两数之和???最奇幻的一轮面试,结束还说.......
2677
7
...
蔚来武汉Java后端实习一面凉经
2568
8
...
腾讯TEG一面
2498
9
...
终章
2353
10
...
滴滴--提前批一二三面(三面链接关了,会赢吗😢,已挂)
2344
创作者周榜
更多
正在热议
更多
#
工作中哪个瞬间让你想离职
#
28544次浏览
200人参与
#
在职场上,你最讨厌什么样的同事
#
16444次浏览
167人参与
#
选了这个offer,你有没有后悔?
#
593221次浏览
4031人参与
#
机械人,秋招第一次笔试的企业是哪家?
#
41209次浏览
327人参与
#
小米硬件提前批进度交流
#
171189次浏览
1528人参与
#
机械求职避坑tips
#
53529次浏览
381人参与
#
哪些公司校招卡第一学历
#
75924次浏览
314人参与
#
担心入职之后被发现很菜怎么办
#
139813次浏览
810人参与
#
入职以后才知道的校招谎言
#
89113次浏览
588人参与
#
职场常用语录大全
#
4249次浏览
32人参与
#
Offer比较,你最看重什么?
#
192248次浏览
1310人参与
#
华子oc时间线
#
1245185次浏览
6487人参与
#
哪些公司开提前批了?
#
30443次浏览
278人参与
#
风评不好的公司,你会去吗?
#
66406次浏览
468人参与
#
两会劳动法放大招
#
76735次浏览
692人参与
#
应届生初入职场,求建议
#
230432次浏览
2651人参与
#
实习如何「偷」产出?
#
57303次浏览
1408人参与
#
不卡学历的大厂有哪些?
#
33673次浏览
261人参与
#
怎么防止在试用期被辞退
#
129241次浏览
927人参与
#
校招阶段,学历VS技术哪个更重要?
#
20008次浏览
210人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务