黑马程序员技术交流社区

标题: 应聘百度,一道试题 [打印本页]

作者: 闫镜湾    时间: 2014-5-23 14:47
标题: 应聘百度,一道试题
有一根27厘米的细木杆,在第3厘米、7厘米、11厘米、17厘米、23厘米这五个位置上各有一只蚂蚁。
* 木杆很细,不能同时通过一只蚂蚁。开始 时,蚂蚁的头朝左还是朝右是任意的,它们只会朝前走或调头,
* 但不会后退。当任意两只蚂蚁碰头时,两只蚂蚁会同时调头朝反方向走。假设蚂蚁们每秒钟可以走一厘米的距离。
* 编写程序,求所有蚂蚁都离开木杆 的最小时间和最大时间。

作者: 闫镜湾    时间: 2014-5-23 14:51
分析:题目中的蚂蚁只可能相遇在整数点,不可以相遇在其它点,比如3.5cm处之类的,也就是可以让每只蚂蚁走 1秒,然后查看是否有相遇的即可.
这样我的程序实现思路就是,初始化5只蚂蚁,让每只蚂蚁走1秒,然后看是否有相遇的,如果有则做相应处理.当每只蚂蚁都
走出木杆时,我就记录当前时间.这样就可以得到当前状态情况下,需要多久可以走出木杆,然后遍历所有状态则可以得到所胡
可能.

作者: 曲佳奇    时间: 2014-5-23 21:03
http://www.cnblogs.com/catprayer/archive/2010/10/18/1854667.html  我也是现查的  这个帖子解释的很清楚
作者: 吴先雄    时间: 2014-5-23 21:15
这个题目也太难了吧,对于刚学基础的人来说
作者: 向前看向前走    时间: 2014-5-23 21:37
这是思想,考的应该就是基础
作者: 彭飞    时间: 2014-5-23 21:41
很高端的样子。。
作者: hengxing0079    时间: 2014-5-24 00:06
曲佳奇 发表于 2014-5-23 21:03
http://www.cnblogs.com/catprayer/archive/2010/10/18/1854667.html  我也是现查的  这个帖子解释的很清楚 ...

托你福,我懒得搜寻了,这题貌似真的很不错!
作者: 梦里花-静    时间: 2014-5-24 00:27
顶一个 不错
作者: 编程学徙    时间: 2014-5-24 04:26
我想说,如果进黑马要考的也是这种题,我表示很无力……
作者: gentleman    时间: 2014-5-24 09:21
其实生活中就有这样的例子
跨市跑出租的的哥们,让他们做这个题肯定会做。!!
前几天我打车去邻市,走到半路看到一个对面跑来的出租车,司机按了一下喇叭,对面车就明白了,两个车都掉头停车,我还纳闷怎么回事那?司机下车就和对面车谈去了,一分钟不到,司机说换车!
我换到对面车上,对面车上换到我的车上。
然后我原来做的 那个车又回去了,我做着另一个车接着走。
后来我问司机,司机说,第一,我不是你们那个市的对道路不熟悉,第二,我不用空车跑回家,第三我们把车费互换,双赢啊!何乐而不为那?
最后我说,那你怎么知道他要和你换车?老司机说,一个眼神,一个喇叭,干出租的都懂!
瞬间感觉出租车司机好厉害!
作者: 247033993@qq.co    时间: 2014-5-24 10:33
这百度出的题目果然高端
作者: 流沙    时间: 2014-5-24 10:53
好难啊,新手怎么能会呢
作者: Porsche911    时间: 2014-5-24 15:59
二楼链接的方法看来是最优的了。早就听说高大上的名企,面试题都是这种题型:他考得不是具体的技术问题,而是考验应聘者发现问题,分析问题,解决问题的能力!因为这种能力不论在哪个领域都是通用的,而且也是不被大多数人所掌握的,拥有这种能力的人,我相信不论在任何领域都是优秀的。
作者: 136616244    时间: 2014-5-24 18:15
蛋疼,一直都这样,看题目没思路,看答案恍然大悟。从高中到现在一直都是这种状态:Q
作者: stream    时间: 2014-5-24 19:03
穷举。。。。
作者: 执笔梦    时间: 2014-5-29 23:04
想到了最快和最慢,不过不会用代码表示.
作者: 沈木生    时间: 2014-5-29 23:33
思想还是算法?新人表示还不能用代码来表达出来
作者: superob123    时间: 2014-5-30 10:38
上面给给链接中求最小值的思路没错,可是最大时间不是取决第3厘米的蚂蚁,因为蚂蚁碰撞后会掉头,所以根据距离取决于最大时间的是
作者: superob123    时间: 2014-5-30 10:45
求代码实现
作者: 夏日蓝雪    时间: 2014-5-30 11:39
闫镜湾 发表于 2014-5-23 14:51
分析:题目中的蚂蚁只可能相遇在整数点,不可以相遇在其它点,比如3.5cm处之类的,也就是可以让每只蚂蚁走 1秒, ...

怎样求出所有情况呢?求代码
作者: 363758086ed    时间: 2014-5-30 22:01
好贴啊  哈哈哈哈 去看答案





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2