程序员,你的逻辑思维有多强(一道推理题测试,不可错过)

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

要做一个程序员,逻辑思维能力是关键,写程序也是对该能力的一种锻炼,这里有一个测试题,你可以对自己现在的能力进行评诂。也希望大家回贴谈谈感受。

本题是柏林大学的一次考试题,要求在30分钟内做出,不过只有少于10%的人完成了要求。计分是这样的,共150分,从1到30分钟,每加1分钟减2分,那么30分钟答出就是90分,是及格分;从30分钟以后每加1分钟减1分。我当时用了22分钟,大家也试试,看自己能得多少分。

原题:有五位小姐排成一列,所有的小姐姓不同、穿的衣服颜色不同、喝不同的饮料、养不同的宠物、吃不同的水果。

钱小姐穿红色衣服;翁小姐养了一只狗;陈小姐喝茶;穿绿衣服的站在穿

白衣服的左边;穿绿衣服的小姐喝咖啡;吃西瓜的小姐养鸟;穿黄衣服的小姐吃

梨;站在中间的小姐喝牛奶;赵小姐站在最左边;吃橘子的小姐站在养猫的旁边;

养鱼的小姐旁边的那位吃梨;吃苹果的小姐喝香槟;江小姐吃香蕉;赵小姐站在

穿蓝衣服的小姐旁边;喝开水的小姐站在吃橘子的小姐旁边;请问哪位小姐养蛇?

你可以收到题后,看三遍,然后开始计时做题。

下面引号中是答案,为了大家不受影响,引号内的答案全是白色,你选中这一块,反色即可看到答案。

符加声明:大家一定要推出全部的答案,并且要没有相当然的部分,这样才能算推出,一定要以这个标准来做题。当然我不是出题老师,标准在你心,是否作弊在你心。

补记一: 其实这个问题的关键在于方法,现在最好的方法就是xlili和Random的方法,这也是许多人能想到的,不过不同的人思路明晰化程度不同。

我想说的是难道没有别的方法了,我开始曾想用数组的方法,后来发觉很乱,也是用了以上所说的矩阵方法,希望有人能有别的方法,不一定要是最好的方法。

如果你已做完该题,你现在在回想一下,看看你刚才的思路,你会明白自己在大多数情况下思考问题的方式。

我的初衷就是你关心自己思考问题的方式么?你往往怎么思考问题?而这道题毕竟只是一道题,它真正的来源是爱因斯坦的一道题,被大家改得很烂了。

补记二:lonsh的推理比较明晰,不过相对来说jc77的还是直观些,winion 提出的解法已是比较明确的数学算法。希望HaoGeGe能把自己的方法说一下,我也很感兴趣。

希望大家在以下三点上做文章,回贴尽量以此为中心(因为推理方法大家都谈得不少了):

1、建立一个模型

2、写出相应的数学算法

3、程序实现方法(什么语言都可以)

答案如下(双引内)

“赵小姐穿黄色衣服,喝白开水,吃梨,奍猫

陈小姐穿蓝色衣服,喝茶,吃橘子,奍鱼

钱小姐穿红色衣服,喝牛奶,吃西瓜,奍鸟

江小姐穿绿色衣服,喝咖啡,吃香蕉,奍蛇

翁小姐穿白色衣服,喝香槟,吃苹果,奍狗”

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航