首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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-22 16:06
北京理工大学 产品经理
文科生投产品岗还有救吗
实习教会我的事
点赞
评论
收藏
分享
01-20 10:19
学而思_HR(准入职员工)
学而思内推,学而思内推码
1️⃣ 请先做个简单的自我介绍? 😊 2️⃣ 能否谈下你应聘这个岗位的优势? 🌟 3️⃣ 你的职业规划是什么? 🎯 4️⃣ 为什么选择学而思作为你的求职目标? 🏢 5️⃣ 你对学而思的课程顾问岗位有哪些了解? 📋 6️⃣ 描述一次团队合作的经历,你在其中扮演了什么角色? 🤝 7️⃣ 遇到工作压力大时,你通常如何应对? 😊 8️⃣ 面对家长和学生的投诉,你会如何处理? 💬 9️⃣ 如何向一个对学而思课程持怀疑态度的家长介绍课程? 📚 🔟 请举例说明你如何通过有效沟通解决过一个问题。 💡 1️⃣1️⃣ 描述一次你认为成功的销售或推广经验。 🚀 1️⃣2️⃣ 你如何看待持续学...
点赞
评论
收藏
分享
2025-12-19 01:27
华中师范大学 前端工程师
所以什么才是终点呢
突然发现自己已经走了很远了曾经也没有想过去大厂实习曾经也没有想过拿很好的offer现在为什么会这样呢看来人总是不知足的啊
兑生:
一开始只是想找个实习,找到实习了想进大厂,进大厂了想转正,转正了想offer打牌,打牌了想要大包,大包了想要wlb……
点赞
评论
收藏
分享
01-22 14:02
飞鱼科技_美术设计部_角色原画(准入职员工)
飞鱼科技内推,飞鱼科技内推码
一面 35min经典自我介绍。长达25min的项目问题。(我PDF简历上贴了演示链接,但是面试官说打不开???)一个向量绕一个点怎么旋转?(这里我说我不会图形学,所以跳过了)那你了解点积和叉积吗,简单说说看看?应用场景?了解协程吗?协程是异步还是同步?项目里面有用到协程吗?你项目里面用到了接口吗?一个逻辑题:斗地主中的“飞机”怎么判断?你怎么设计数据结构来解决这个问题?那假设现在是有“癞子”的情况呢?(然后我BalaBala讲了一堆,看面试官最后的说法,大概说对了)。反问环节。请问贵公司对于鱼苗夏令营是一个怎么样的安排,参加夏令营的同学们会学习到什么知识?听说贵公司不止在研保卫萝卜,请问还有哪...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
13
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
实习产出如何包装?
8519
2
...
32岁程序员猝死,底薪3千要24h待岗
2056
3
...
【官方活动】牛客新春计划:给陌生人的一封信
1726
4
...
实习生怎么快速融入团队
1397
5
...
后端从0开始来得及吗
1114
6
...
20多岁最痛苦的年纪
1023
7
...
27届实习全时间全方位大体指南
990
8
...
程序员996斩杀线悄然而至
931
9
...
阶段性的迷茫不过是人生正在“换挡”
924
10
...
绷不住了,找了一个月实习嵌入式还找不到
871
创作者周榜
更多
正在热议
更多
#
哪些公司开春招了?
#
11632次浏览
122人参与
#
四大天坑是哪四家?
#
101165次浏览
235人参与
#
上班以后,你还有哪些坚持的爱好?
#
7938次浏览
183人参与
#
互联网公司评价
#
479379次浏览
4086人参与
#
你最近因为什么迷茫?
#
35971次浏览
581人参与
#
你觉得什么岗位会被AI替代
#
34752次浏览
229人参与
#
找工作以来,你最看不惯__
#
16366次浏览
327人参与
#
工作压力大怎么缓解
#
138458次浏览
1250人参与
#
实习离职怎么跟领导说
#
76077次浏览
432人参与
#
AI coding的好用工具分享
#
20210次浏览
389人参与
#
聊聊你的被动加班经历
#
3712次浏览
69人参与
#
实习教会我的事
#
51951次浏览
408人参与
#
实习怎么做才有更好的产出
#
13152次浏览
235人参与
#
一人一个landing小技巧
#
142888次浏览
1497人参与
#
百度工作体验
#
302337次浏览
2219人参与
#
百度求职进展汇总
#
653907次浏览
6275人参与
#
我和mentor的爱恨情仇
#
101488次浏览
919人参与
#
你都在哪些场所面过试?
#
21260次浏览
229人参与
#
实习生工资多少才算正常?
#
13874次浏览
208人参与
#
uu们,春招你还来吗?
#
43570次浏览
240人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务