世界500强面试题

首页
字体:
上 页 目 录 下 章
微软等世界500强公司的面试问题(1)(2/2)

    5 结果就是装着被污染的药丸的瓶子号码。

    ◆11. 如果你有一个容量为5夸脱的水桶和一个容量为3夸脱的水桶,怎样准确地量出4夸脱的水?

    ◆12. 在开汽车的锁时,应该往哪个方向旋转钥匙?

    ◆13. 如果你可以移动50个州中的任何一个,你会挑哪个,为什么?

    ◆14. 有4条狗(4只蚂蚁或4个人)分别在一个广场的4个角落里。突然,它们同时以同样的速度追赶在自己顺时针方向的一个人,而且会紧追这个目标不放。它们需要多少时间才能相遇,相遇地点在哪里?

    提示:它们将在广场中央相遇,所跑的距离与它们跑的路线无关。

    ◆15. 从空中放下两列火车,每列火车都带着降落伞,降落到一条没有尽头的笔直的铁道上。两列火车之间的距离不清楚。两列车都面向同一个方向。在落地后,降落伞掉在地上,与火车分离。两列火车都有一个微芯片,可以控制它们的运动。两个芯片是相同的。两列火车都不知道自己的位置。你需要在芯片中写入编码,让这两列火车相遇。每行编码都有一定的执行命令的时间。

    你能使用以下指令(而且只能用这些指令):

    mf—让火车朝前开

    mb—让火车朝后开

    if(p)—如果火车旁边有降落伞,这个条件就得到了满足。

    goto

    答案:

    a:mf

    if(p)

    goto b

    goto a

    b:mf

    goto b

    解释:第一行只是让它们离开各自的降落伞。必须让它们离开自己的降落伞,这样后面的火车才能发现前面火车的降落伞,这样就满足了一个条件,它们就可以跳出起初遵守的编码。它们起初都在a这部分循环,直到后面的火车发现前面火车的降落伞,这时就转入b:并陷入b的循环。前面的火车还是没有找到降落伞,所以就不停地在a里面循环。由于每行编码都有一定的执行命令时间,完成a循环就比完成b费时,因此后面的火车(在b循环中)最终将赶上前面的火车。



    狠男人小说最快更新,无弹窗阅读请。

本章未完,请翻开下方下一章继续阅读