首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客05288号
2016-09-02 21:20
大连海事大学 算法工程师
关注
已关注
取消关注
面试时遇到的一个算法题,请教大家
面试时的时候,面试官问了我一个算法题,题目大概是这样的:一个手机键盘上的数子0-9(也就是九宫格键盘),假如有两个机械臂a和b,初始位置都在0数字上,机械臂移动一步都会消耗一定的能量,问随意给定一个手机号码,两个机械臂怎样移动才会消耗最少的能量把手机号码打印出来。
希望大家给个思路,我觉得是动态规划吧,最后能把代码贴出来,谢谢了……
提示
全部评论
推荐
最新
楼层
我来讲一个冷笑话
University of Helsinki C++
因为数字不多,可以动态规划吧。 数字个数1,返回a,b里移动距离最小的。 数字个数大于1,返回min(a移动距离+剩下n-1个数字移动距离最小的,b移动距离,+剩下n-1个数字移动距离最小的。
点赞
回复
分享
发布于 2016-09-03 09:30
牛客1481368号
东北大学 C++
#include<iostream> #include <vector> using namespace std; int DistanceArry[10][10]; int Mindistance=INT_MAX; int arry[11]; int point[2]; void DFS(int index,int value) { if(index==11) { if (value<Mindistance) { Mindistance=value; return ; } } else { for(int i=0;i<2;i++) { int tmp=point[i]; int addvalue=DistanceArry[point[i]][arry[index]]; point[i]=arry[index]; DFS(index+1,value+addvalue); point[i]=tmp; } } } int main() { for(int i=0;i<11;i++) { cin>>arry[i]; } point[0]=point[1]=0; for(int i=0;i<10;i++) { for(int j=i;j<10;j++) { if(i==0) { DistanceArry[j][0]=DistanceArry[0][j]=(11-j)/3+(11-j)%3; } else { DistanceArry[i][j]=DistanceArry[j][i]=((j-i)/3)+(j-i)%3; } } } DistanceArry[0][0]=0; DFS(0,0); cout<<Mindistance<<endl; }
点赞
回复
分享
发布于 2016-09-03 09:19
Horanol
字节跳动_Data-商业化技术_后端开发
这不是一个局部最优的题,不能用贪心算法,也就是不能每一步都取距离最小的值,这样总的步数未必是最小的。
点赞
回复
分享
发布于 2016-09-02 23:22
牛客492426号
Java
让a去找第一个数字,达到后,a在第一个数字位置,b在0,计算a和b距离第二个数字的距离,谁近谁走,依次类推 (感觉就是计算两个点到第三个点的距离,近的变成第三个点,距离相等走a,再继续计算,个人想法,仅供参考,不知道对不对...)
点赞
回复
分享
发布于 2016-09-02 22:15
呵呵哒2333
北京理工大学 C++
这个手机号码是11位的,搜索空间很小,用普通的搜索就行了:(pos1, pos2, index) = Min(dis(pos1, telnum[index]) + (telnum[index], pos2, index+1) /*第一个机械臂从pos1移动到telnum[index]*/,dis(pos2, telnum[index]) + (pos1, telnum[index], index+1)) /*或者第二个机械臂从pos2移动到telnum[index]*/ ; (pos1, pos2, 11) = 0。 (其中dis函数是两个按键的移动消耗,O(1)的复杂度),然后可能会出现重复计算,那么就加个记忆set保存计算过的结果,还有(pos1, pos2, index) == (pos2, pos1, index)。
点赞
回复
分享
发布于 2016-09-02 22:10
cc98
浙江大学 C++
双层的DP
点赞
回复
分享
发布于 2016-09-02 21:32
金八铜九炮灰十
蓝翔职业技术学校
0-9一共10个数,哪来的九宫格?
点赞
回复
分享
发布于 2016-09-02 21:30
gongzixiaomu
华南理工大学
各个数字之间的距离集合中求最小和,初步想法……
点赞
回复
分享
发布于 2016-09-02 21:26
暂无评论,快来抢首评~
相关推荐
01-23 23:10
The University of Manchester 深度学习
腾娱互动AI游戏应用研究
📍面试公司:腾娱互动🕐面试时间:26.1.23💻面试岗位:AI游戏应用研究❓面试问题: 1.自我介绍 2.说一说简历里的一个游戏demo 3.说说sql数据库的一些基本操作 4.说说之前在腾讯实习期间做了什么 5. 说一个最喜欢的游戏,并对其进行拆解,好的地方,不好地方,有哪些是AI可以用上的🙌面试感想: 后续顺利通过了,发了笔试题,笔试题涉及一个系统的开发(第一次见)。但后续感觉面试官(也就是入职后的直接主管)的态度不太友好,整体感觉很mean,觉得之后进去上班肯定很压抑,然后就没有推进后续流程了
查看5道真题和解析
点赞
评论
收藏
分享
01-28 21:54
顺丰集团_大数据挖掘与分析工程师(准入职员工)
顺丰内推,顺丰内推码
已经来工作一个多月啦,感觉幸福度很高,顺丰真的是很值得来的一家公司!公司里的氛围很好,同事们很nice很好沟通,和大家私下相处也贼融洽。工作很充实但是没什么压力,领导带教都不push,感觉每天来公司都很开心~💼 公司岗位数据分析💢 工作强度在整个集团里算卷的,顺丰科技大多数部门965美滋滋,但是我进的部门业务多975,双休基本可以保证,需求多的话周末也要赶一下进度。🫶️ 团队氛围进的团队好,前辈都很热心教人,有问必答。❤️ 职场感受希望我这次转正能通过吧,能过的话会来报喜😊顺丰集团2026届校招启动!【公司简介】:顺丰集团是世界500强企业第377位,中国第一大、世界第四大快递物流服务...
顺丰集团工作强度 431人发布
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
01-07 00:20
百度太有诚意了
双9硕,大模型算法,总包170w-200w。很有诚意,无签字费。已接。
Richard奇:
今晚的梦有素材了
点赞
评论
收藏
分享
2025-12-27 19:32
河海大学 Web前端
27届实习求助
为什么感觉实习经历没啥用,有过一段实习之后还是这么难找,是简历出问题了吗 😩
实习简历求拷打
点赞
评论
收藏
分享
01-27 15:43
顺丰集团_HR(准入职员工)
顺丰内推,顺丰内推码
1月还有很多HC!!!!java笔试题目:用 Python 实现一个函数,用于计算斐波那契数列的第 n 项。以下 Java 代码片段是否存在问题?如果有,请指出并改正。简述 C++ 中指针和引用的区别。实现一个二叉树的中序遍历算法,可使用递归或非递归方式。对于一个无序整数数组,使用快速排序算法对其进行排序,并分析该算法的时间复杂度和空间复杂度。设计一个算法,判断一个字符串是否为回文串,要求时间复杂度尽可能低。简述 TCP 三次握手和四次挥手的过程,并说明为什么连接建立是三次握手,而连接释放是四次挥手。一台主机的 IP 地址为 192.168.1.100,子网掩码为 255.255.255.0,...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
13
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
一个普通人在985学计算机的四年
1.0W
2
...
挣钱虽不多,但也弥补了校园时期的遗憾
4466
3
...
每天辣么多AI新项目,自己怎么跟得上呢
4305
4
...
面试官视角聊聊,怎么讲清楚自己做的AI项目
3050
5
...
快手年终发得又多又早,这波是我羡慕了
3004
6
...
人均AI Coding后,程序员面试还有必要问八股吗
2908
7
...
就算做开发用AI工具,面试也逃不掉八股和手撕
2842
8
...
大厂提前实习对AI开发的新感悟
2828
9
...
J人永远闲不下来于是去提前实习
2828
10
...
互联网大厂的AI相关岗位全面介绍
2816
创作者周榜
更多
正在热议
更多
#
赚钱的意义在这一刻具象化
#
7465次浏览
176人参与
#
快手年终开大包
#
1554次浏览
38人参与
#
今年春招是金一银二嘛?
#
15178次浏览
179人参与
#
AI求职实录
#
8915次浏览
269人参与
#
没关系,至少我的__很曼妙
#
6482次浏览
122人参与
#
初创公司值得加入吗?
#
37391次浏览
217人参与
#
抛开难度不谈,你最想去哪家公司?
#
8437次浏览
166人参与
#
为什么有人零实习也能进大厂?
#
8460次浏览
189人参与
#
牛客吐槽大会
#
5956次浏览
115人参与
#
1月小结:你过的开心吗?
#
3074次浏览
62人参与
#
AI时代的工作 VS 传统时代的工作,有哪些不同?
#
11230次浏览
270人参与
#
你的第一家实习公司是什么档次?
#
6543次浏览
97人参与
#
当你问AI“你会取代我的工作吗”,它说_?
#
5652次浏览
175人参与
#
你的landing期是如何度过的?
#
11620次浏览
225人参与
#
除了Java,最推荐学什么技术?
#
9291次浏览
201人参与
#
你今年的平均薪资是多少?
#
200929次浏览
1012人参与
#
如果能重来,就业or读研你选哪个?
#
270403次浏览
2601人参与
#
机械人你知道哪些单休企业
#
83424次浏览
417人参与
#
你觉得什么岗位会被AI替代
#
37398次浏览
256人参与
#
秋招结束之后的日子
#
117298次浏览
1062人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务