首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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
暂无评论,快来抢首评~
相关推荐
不愿透露姓名的神秘牛友
07-04 14:35
实习半年合理吗?
知道就业环境差,但是没想到实习也这么难找...
_mos_:
60块
不如去刷碗
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
07-03 14:32
实习期间完成不了需求好难受
八股选手已卒在某厂很大的公司实习,报到一个星期后开始接手项目,一个星期过去乱七八糟做了些东西,请教mt看代码结果就很敷衍地看了一下,问ai也不明白,半夜焦虑的睡不着,感觉会拖累和我一起干的od小哥
pluck*0916:
刚开始都会这样滴
点赞
评论
收藏
分享
05-23 21:27
成都信息工程大学 网络安全
避坑
避坑恶心到我了大家好,今天我想跟大家聊聊我在成都千子成智能科技有限公司(以下简称千子成)的求职经历,希望能给大家一些参考。千子成的母公司是“同创主悦”,主要经营各种产品,比如菜刀、POS机、电话卡等等。听起来是不是有点像地推销售公司?没错,就是那种类型的公司。我当时刚毕业,急需一份临时工作,所以在BOSS上看到了千子成的招聘信息。他们承诺无责底薪5000元,还包住宿,这吸引了我。面试的时候,HR也说了同样的话,感觉挺靠谱的。于是,我满怀期待地等待结果。结果出来后,我通过了面试,第二天就收到了试岗通知。试岗的内容就是地推销售,公司划定一个区域,然后你就得见人就问,问店铺、问路人,一直问到他们有意向为止。如果他们有兴趣,你就得摇同事帮忙推动,促进成交。说说一天的工作安排吧。工作时间是从早上8:30到晚上18:30。早上7点有人叫你起床,收拾后去公司,然后唱歌跳舞(销售公司都这样),7:55早课(类似宣誓),8:05同事间联系销售话术,8:15分享销售技巧,8:30经理训话。9:20左右从公司下市场,公交、地铁、自行车自费。到了市场大概10点左右,开始地推工作。中午吃饭时间大约是12:00,公司附近的路边盖饭面馆店自费AA,吃饭时间大约40分钟左右。吃完饭后继续地推工作,没有所谓的固定中午午休时间。下午6点下班后返回公司,不能直接下班,需要与同事交流话术,经理讲话洗脑。正常情况下9点下班。整个上班的一天中,早上到公司就是站着的,到晚上下班前都是站着。每天步数2万步以上。公司员工没有自己的工位,百来号人挤在一个20平方米的空间里听经理洗脑。白天就在市场上奔波,公司的投入成本几乎只有租金和工资,没有中央空调。早上2小时,晚上加班2小时,纯蒸桑拿。没有任何福利,节假日也没有3倍工资之类的。偶尔会有冲的酸梅汤和西瓜什么的。公司的晋升路径也很有意思:新人—组长—领队—主管—副经理—经理。要求是业绩和团队人数,类似传销模式,把人留下来。新人不能加微信、不能吐槽公司、不能有负面情绪、不能谈恋爱、不能说累。在公司没有任何坐的地方,不能依墙而坐。早上吃早饭在公司外面的安全通道,未到上班时间还会让你吃快些不能磨蹭。总之就是想榨干你。复试的时候,带你的师傅会给你营造一个钱多事少离家近的工作氛围,吹嘘工资有多高、还能吹自己毕业于好大学。然后让你早点来公司、无偿加班、抓住你可能不会走的心思进一步压榨你。总之,大家在找工作的时候一定要擦亮眼睛,避免踩坑!———来自网友
qq乃乃好喝到咩噗茶:
不要做没有专业门槛的工作
点赞
评论
收藏
分享
05-21 00:34
华中科技大学 Java
求狠狠锐评简历,27届想找日常实习
想问一下现在找实习还来得及吗?学长跟我说没准备好就别找,会脏面经真的假的哇
DAYQWQ:
双9✌🏻直接冲中大厂日常,直接官网好了。 现在日常实习好少
点赞
评论
收藏
分享
07-04 12:30
南京理工大学 模拟IC设计
突然感觉暑期实习没有offer也不坏
有更多时间玩更多时间准备考公考编更多时间秋招更多时间思考自己未来想做什么最后总会找到工作的
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
13
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
我是一个能独当一面的大人吗
8612
2
...
我举报了室友面试作弊
7282
3
...
大家觉得测试还能活多久
7195
4
...
友友们如何看待这个问题
6533
5
...
实习期间女mt这么说我该怎么回...
4356
6
...
累了,和自己和解了
3935
7
...
加班到十点,连续加班两个星期,这是实习生的强度吗?
3487
8
...
现在的hr在清高什么啊???
3436
9
...
腾讯csig暑期一二三面
3424
10
...
我的妈呀好久没见过这么尊重人的hr了
3412
创作者周榜
更多
正在热议
更多
#
你觉得实习能学到东西吗
#
34017次浏览
678人参与
#
百度工作体验
#
221995次浏览
1969人参与
#
现代汽车前瞻技术研发急速编程挑战赛
#
27189次浏览
213人参与
#
秋招什么时候开投比较合适?
#
21811次浏览
299人参与
#
机械人与华为的爱恨情仇
#
116723次浏览
945人参与
#
实习,不懂就问
#
44682次浏览
669人参与
#
发工资后,你做的第一件事是什么
#
67944次浏览
229人参与
#
机械人集合!你是什么工程师?
#
15627次浏览
89人参与
#
如何准备秋招
#
19504次浏览
375人参与
#
找不到好工作选择GAP真的丢人吗
#
78021次浏览
938人参与
#
工作中哪个瞬间让你想离职
#
25719次浏览
177人参与
#
我想去国央企的原因
#
59727次浏览
393人参与
#
快手求职进展汇总
#
546810次浏览
6001人参与
#
硬件应届生薪资是否普遍偏低?
#
73873次浏览
514人参与
#
你们公司几号发工资
#
20898次浏览
140人参与
#
多益网络求职进展汇总
#
29055次浏览
134人参与
#
不考虑转正,实习多久合适
#
31996次浏览
145人参与
#
如果再来一次,你还会学硬件吗
#
125563次浏览
1402人参与
#
软开人,秋招你打算投哪些公司呢
#
102772次浏览
958人参与
#
每个月的工资都是怎么分配的?
#
27380次浏览
423人参与
#
面试中,你被问过哪些奇葩问题?
#
68355次浏览
796人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务