像程序员一样思考--笔记(1)
2013-11-06 17:06
288 查看
今天瞎看的时候看到一本《像程序员一样思考》,挺不错的,适合菜鸟看看。
第一章讲了几个小智力题,第一个是如何过河,
就是一个农夫带了一个狐狸,一只鹅和一包玉米,如果农夫不在的话狐狸吃鹅,鹅吃玉米
但是只有一只船,一次只能带两个单位的东西,要如何过河。
原来参加的一次笔试里有这个类似的问题,换成了狼,菜,兔子。
那时候不懂这个题目的意思,我答的是利用水的浮力把菜放到篮子里过去。哈哈,我觉得这个可以把鹅用绳子拉着让它游过去。不过答案不是这样的...
那时候我同学告诉我这是要利用互斥的方法,还要往回运东西,我瞬间就凌乱了...呵呵呵,这不是give me shit么...
1.农夫带着鹅到对岸,留下狐狸和玉米,回来。
2.农夫再次过河,把狐狸带到对岸,回来的时候带着鹅。这样对岸有了狐狸
3.农夫把鹅带回来,放下鹅带着玉米过河,然后放下玉米回来把鹅带过去。这样就完成了所有的步骤。
一般人在想这个问题的时候不会考虑还能回来的情况,就是不会脑筋急转弯,哈哈。
第一章讲了几个小智力题,第一个是如何过河,
就是一个农夫带了一个狐狸,一只鹅和一包玉米,如果农夫不在的话狐狸吃鹅,鹅吃玉米
但是只有一只船,一次只能带两个单位的东西,要如何过河。
原来参加的一次笔试里有这个类似的问题,换成了狼,菜,兔子。
那时候不懂这个题目的意思,我答的是利用水的浮力把菜放到篮子里过去。哈哈,我觉得这个可以把鹅用绳子拉着让它游过去。不过答案不是这样的...
那时候我同学告诉我这是要利用互斥的方法,还要往回运东西,我瞬间就凌乱了...呵呵呵,这不是give me shit么...
1.农夫带着鹅到对岸,留下狐狸和玉米,回来。
2.农夫再次过河,把狐狸带到对岸,回来的时候带着鹅。这样对岸有了狐狸
3.农夫把鹅带回来,放下鹅带着玉米过河,然后放下玉米回来把鹅带过去。这样就完成了所有的步骤。
一般人在想这个问题的时候不会考虑还能回来的情况,就是不会脑筋急转弯,哈哈。