当前位置:首页 > x趣闻 >

40个高智商推理答案

  • x趣闻
  • 2022-01-05

提到高智商,大多数人都知道,有人问18个高智商逻辑推理故事(附答案),还有朋友想问三个高智商推理故事及答案,这到底是咋回事?实际上高智商逻辑推理题 答案呢,小编为大家带来40个高智商推理答案,希望能帮到你。

40个高智商推理答案

18个高智商逻辑推理题,据说只有智商达到150的才能看懂第一题:懦弱的男人

男人和女人坐皮艇在海上时,遭遇了鲨鱼,在鲨鱼离他们只有10米远的时候,男人着急的将女人推进了海里,并抽出匕首指着女人,说道,我们只能活一个!随即男人迅速划船逃离.女人很失望,对于这个懦弱自私的男人,她没有责怪他什么,只怪自己瞎了眼看上他...... 女人在默默的等待死亡, 五米,四米......鲨鱼速度很快,女人闭上了眼睛,忽然鲨鱼绕过了她,冲向皮艇,将男人拖下水,疯狂的撕咬男人,很快男人便尸骨无存.

后来女人被路过的商船救了下来,女人发现船长望着海水在哭泣.女人问他哭什么?船长说出了原因,女人听后伤心欲绝,跳进海里自杀了.船长说了什么?

第二题:迷路的男孩

有个男人开车去机场赶班机,在到了一个三岔口时,看见一个男孩蹲在地上哭泣.男人下车询问男孩为什么哭,男孩说他迷路了.于是男人带着小男孩朝他描述的大致方向找去,在开了很久的车之后,男孩说看见了自己的家,便跳下车.这时,男人发现自己已经误了班机的起飞时间.男人在车里沮丧起来,突然又吓的直冒汗,然后又欣慰的笑了.是什么事造成男人这样的情感变化?

第三题:地下酒吧的秘密

在地下五层的酒吧中,一个年轻的小伙子坐在吧台边的椅子上焦急的等待.他的眼睛一动不动的注视着天花板上钟表上的时间.突然他像发了狂一样拿出手机,看了一眼,接着将手机狠狠的扔在地上,然后哭着大喊:救命!......他一系列行为的原因是什么?

第四题:只有公主逃走了!

王子带着公主逃出了鬼堡,到出口处时,魔鬼出现了,魔鬼说:“白色代表天使,与恶魔对立,所以穿白色连衣裙的公主不能通过,必须死在这里!”说着魔鬼掏出了匕首.结果王子却死了,公主逃出了鬼堡,为什么?

第五题:死于心脏病.

花匠和他的女朋友在谈论最近发生的一件变态的碎尸案件,谈着谈着,花匠的女朋友说:“还是谈点别的吧,比如你养的花!对了,你的后园里的花我可以参观一下吗?”花匠表示花还没有开好,等花开的时候再参观吧.女朋友点头同意了.

傍晚的时候,花匠的女朋友偷偷进入的花匠的花园,在参观一周后,她突发心脏病死了.她到底受到了什么惊吓才导致心脏病的?

第六题:妈妈的手

小明睡在妈妈睡的大床旁边的小床上,每天夜里小明的妈妈都会从被窝里伸出手拉住小明的手,小明才能睡着.

有一天,有人发现小明全家都死了.小明的爸爸被砍成了肉泥,小明的妈妈也死了,小明也死了。小明手里抱着一个血淋淋的胳膊。

你知道小明家里发生了什么事情吗?

第七题:绿衣服

一个刚退伍的老兵,一天夜里起床上厕所时,发现老伴没有睡在身边,枕头掉在木头地板上,然后很疑惑的他走进厕所发现了马桶上有一件很小的绿色衣服,当场就被吓死了,请问为什麽?

第八题:七点十二分

一名男子很惧怕坐飞机,但是由于工作的关系不得不乘坐飞机在各国间出差往来。他每次都对于时差现象特别不适应,有一次他来到了一个跨洲的国家后,下飞机后看了一下手表,显示的是早上七点十二分,他随后就哭著自杀了,请问为什麽?

第九题:钥匙

一名保险推销员下班后去超市买过圣诞节送给女友的礼品,他最终买的是一个刻有月亮图案的纯银挂件。出超市后,他看见一个小姑娘在路边哭泣,就过去看怎麽回事,突然发现那个小姑娘胸前有一串钥匙。第二天,警方发现小姑娘全身赤裸地死在街边,试分析原因。

第十题:半张相片

女孩和男孩恋爱很久,当初是男孩先追求的女孩。女孩过生日了,男孩送给她一个八音盒,虽然是旧的,但女孩十分高兴。不久后有一天,女孩不小心把八音盒摔坏了,发现里面夹这一张只剩半截的旧相片,上面很模糊地象是一条狗的影像,女孩马上吓死了,请问为什麽?

第十一题:混血儿

有一个孩子,他的父亲是名英国医生,他的母亲是一名日本的英语教师,他从小就因为自己是混血儿而倍感自豪。有一天他翻开母亲上课准备的讲义,发现里面有一张很久前的便条纸,上面画了一面没有涂色的英国国旗,他立刻回家刺杀了父亲,请问为什麽?

第十二题:MSN头象

一名有前科的男子刚从警局回家,他由于某件杀人事件而三不五时地被召唤去警局盘问,但由于证据不足被释放了。回家后他和往常一样打开了MSN聊天,忽然发现一名网友的头象是一件肮脏的黑色西装,他马上冲出去,到街上买了一件相同规格,但是颜色为白色的西装试分析原因。

第十三题: 可乐的味道

一个在运动中骨折的患者(女性)康复出院了,家里庆祝并大摆宴席。喝饮料的时候,患者的哥哥说今天的可乐怎麽味道有点怪,然后患者的父亲和母亲也喝了纷纷表示可乐味道的确不对。但患者喝后坚称味道正常。患者死于当天晚上洗澡的澡盆里。为什麽?

第十四题:瞎子和狗

从前有一个瞎子,一个人住非常寂寞,所以就养了条狗。狗狗非常喜欢黏他。有一天早上,有人敲门来找,是瞎子的邻居,邻居对瞎子说:“你怎么让你家的小狗在楼梯间呆了昨天一晚上呀?”瞎子听到后,想了想就呕吐不止.为什么?

第十五题:胖子

从前有一个胖子,去一个新朋友家参加多人聚会。胖子不爱理人,就一个劲地吃零食。上正餐的时候,胖子也就光顾着一个劲地吃。等到上冬瓜炒肉的时候,胖子实在胀得不行就去了卫生间。这天晚上,聚会众人中有一个人被人谋杀了。这是怎么回事?

第十六题:海员和医生

从前有一个海员和一个医学实验室的女实验员结了婚。结婚没多久,女实验员精神就失常了,为什么?

第十七题:幽会

从前有一个女人,他的老公非常喜欢搞外遇,这个女人实在忍受不了这种状况,就决定吃药自杀,自杀前她留了一封遗书给她的初恋情人。初恋情人看到遗书后,十万火急地赶到女人家里,还好女人没有死,女人看到初恋情人来了表现得很激动,二人缠绵不已。初恋情人对女人说他一定帮忙教训她的老公。第二天,警察登门,告诉女人说她老公已经死了,在和情妇幽会的时候死了。请问这是怎么一回事?

第十八题:4月6日

从前有一个赌鬼的遗孀,有一天她看她小儿子以前写的日记。“4月6日 爸爸不爱洗澡,身上长了很多虱子,我趁他睡觉时抓了几个,真好玩。”女人看了以后,就精神失常。为什么?

1.船长说:我看见那个男人用小刀划破了手腕,他边划边让血流入海里吸引鲨鱼,所以鲨鱼绕过你,去追寻血腥味,你才因此活下来.他是那样的爱你啊!

2.男人10年前将一个出车祸的小男孩送进的医院,10年后又看到这个小男孩,但一时没有想起.忽然车里的广播传来飞机失事的消息,男人因此吓的冒汗.欣慰的笑了是因为他知道是小男孩的灵魂在感恩.

3.男人在酒吧等待女友,当他看到天花板上的电子钟时,他发现上面显示的时间是在倒记时!他记起酒吧里根本没有钟.所以那是一个定时炸弹,且马上就要爆炸了.男人不想女友出事,便拿手机让她别来了.可在地下5层里没有信号,因此男人在最后5秒时崩溃了,大喊救命并逃跑.

4.公主杀王子,血染衣红

5.花匠用内脏浇花

6.小明抱的是歹徒的手(当成妈妈了),死死抱住,歹徒为了逃走,砍了自己的手。

7.老兵其实有梦游症,在他服役期间他由于梦游用枕头把他的战友闷死,他清醒过来后,就把他的战友的尸体用军刀肢解后扔进厕所里冲走.处理完尸体后只剩下战友的绿色军装. 那天晚上老伴一边上厕所一边帮她们的儿子织绿色的小军装(应该有儿子了吧^Q^)结果把衣服忘在了厕所里. 老兵下床没看见老伴是因为她老伴知道他老公有梦游症所以独自一个人在沙发上睡觉,而老兵误以为自己亲手杀了自己的老婆和儿子所以被自己的令人发指的KB行径吓死了~~

8.这个男子是罗马人,他用的是罗马数字的电子表,7点12是VII XII,形状像是一个勾一个叉的选择按钮. 他去的地方是希腊,希腊用希腊语拼写是HellAs..机场的牌子和机场播音都会写明,加上他上飞机的时候是早上,过了几个小时就漆黑一片了,对一个时差还没有调整好的人以为自己莫名其妙到了(Hell)地狱入口,手表上还很诡异的弹出一个勾一个叉的选择符号,所以哭着自杀了。

9.保险推销员想让女孩的父母跟他办保险.于是他杀了女孩,之所以要让她全身赤裸是因为想让所有人知道女孩是他杀,而不是意外,凶手取走了她身上所有的东西,当然也包括钥匙.那么女孩的父母就会知道钥匙落入凶手之手,排除意外丢失的可能,就会很恐惧,因为凶手很可能利用钥匙潜入他们家,保险员此时就可以说服他们买保险.

10.当女孩看到狗的影像后,女孩发现自己认识这条狗和这条狗的主人(狗的主人把自己一半撕掉是因为不想让人知道自己过去的样子),女孩一直以为这条狗的主人已经死掉了(死因可能是由女孩直接导致的)。女孩之所以被吓死是因为她突然发现原来狗的主人没有死掉,狗的主人就是现在的男友,男友追她的目的是找她报仇。然而女孩当时没有发现这点是因为男孩整容了,也就是为什么只有半张照片。

11.之所以没涂颜色是因为母亲无法分辨颜色,她是红绿色盲,根据伴X隐性遗传规则假如母亲是色盲XBXB的话男孩一定是色盲XBY,但他知道自己没有色盲,所以他不是母亲的孩子而是父亲与家中的菲律宾女佣的孩子……这对于以血统自傲的他来说是不可容忍的事。

12.那个男人是个职业杀手,他的网友则是介绍生意给他的接线人,每次需要他杀人时候的那个网友所做的标志就是换上肮脏黑色西装的头像。而每次职业杀手杀人的时候,都会换上一身白色的西装,因为白色容易沾上血,所以每杀一个人后肯定都要扔掉下次重新买。因此,当他看到网友换上黑西装头像,马上知道要执行任务所以去买西装。

13.她在医院接受治疗时因为错用药物而丧失了部分嗅觉和味觉,所以没能尝出可乐中的异常味道——洗澡时也没有闻到热水器中煤气泄漏的味道

14.瞎子非常喜欢小狗,因为小狗为他寂寞的生活带去了很多快乐。甚至每一天晚上睡觉时,他都把手伸向床外,让狗狗尽情舔他的手。这一天晚上关灯上床后,照例,瞎子的手又被湿润而可爱的小舌头舔着,他很满足。可是第二天,他才知道,昨天晚上他的狗狗并不在家。于是他想起了一件事:最近这一带的人家总是失窃,据说盗贼是一个狡猾而变态的家伙。想到这,瞎子的胃不禁翻腾起来。

15.胖子叫冬瓜,在厕所听到隔壁有个女人说:冬瓜真垃圾...于是,胖子以为是...所以杀了她..

16.女实验员的实验室里有很多小白鼠,虽然她早已习惯了解剖它们,可是难免会为这些无辜任人宰割的小生灵们感到于心不忍。女人结婚后发现他丈夫很喜欢去她的实验室,但是每次都鬼鬼祟祟的,让人觉得可疑。其实她不知道他的一段往事:那是一次海难,海员们全都被困在大海里没有出路。没几天,储备的食物和水全都吃光了。海员们为了求生,只好喝自己的尿液,吃仓库里的小老鼠。这一天,女人为了探索丈夫的秘密,悄无声息地潜入了实验室,不料看到了可怕的一幕:他的丈夫正站在鼠笼旁,正目露凶光,嘴里叼着活生生血淋淋的半截老鼠。

17.女人是一个忍气吞声的人,对于丈夫的屡屡出轨她只会选择默默地忍受。终于她忍受不了了,她对自己的婚姻和人生彻底绝望了,她拿出自己早就准备好的毒药——藏在柜子里装在普通瓶子里以掩饰的毒药,把药服了。她等待着死亡的到来,可是她的身体没有出现丝毫痛苦的征兆,相反,却有一种微妙的躁动在上升。这时,他的初恋男友十万火急地赶来了,女人见了男友表现得十分热情,还主动和他云雨缠绵,这对性格懦顺的她来说很是难得。而在另一个角落,女人的老公和情妇也要将上演另一幕激情戏的时候,男人拿出了事先准备好的秘密武器——平日藏在自己家柜子里装在普通瓶子里以掩饰的伟哥。多少年来,男人到处拈花惹草,靠的就是这个秘密武器大振雄风。这一次,他像往常一样潇洒地吞了一粒,可是没过多久,他突然全身痉挛,表情极为痛苦,过了一会儿就死了。

18.女人是一个可怜的人,丈夫生前是一个十足的赌徒,每每丈夫要去追求千金一掷的大赌之际,她都感到自己的心脏紧张像被人拧似的。有一次,丈夫突发奇想要跟人赌谁身上的虱子多,而赌注是——全部家当和他的性命。可是结果非常不幸,4月7日赌博的这一天,丈夫以少一个虱子的数落败了。愿赌服输,丈夫的命因此赔上,家里也被倾荡一空了。女人痛不欲生,哭了三天三夜,最后还是决定为自己的儿子挺下来。但是她的心灵已变得极度脆弱,已经不能承受任何风吹草动的打击了。这一天,她看了小儿子的日记,她看到的事情真相狠狠地刺激着她那颗脆弱的饱经摧残的心。

其实这种题意义不大,因为现实生活中可不会只因为一个照片而判断嫌疑。

说说我的观点。B夫妇中的女士穿职业正装,手里还有鲜花,而他们的行李箱却是一个巨大的,用于旅行的的行李箱而非公文箱。

他们为啥要带那么大的行李箱呢?因为他们要长途旅行。那他们为啥又要穿职业正装而不在行李中换上一件舒适的便服呢?因为他们不想让人看出来他们在逃亡。所以我选b

10个高智商的鬼故事推理题,你能看懂吗

智力题,考智商.一共多少个方块?

16+9+4+5+5+1=40(个)

考考大家: 这是一道可以测出一个人有没有商业头脑的数学题。王师傅是卖鱼的,一斤鱼进价45元,现亏本大甩卖,顾客35元买了一公斤,给了王师傅100元假钱,王师傅没零钱,于是找邻居换了100元。事后邻居存钱过程中发现钱是假的,被银行没收了,王师傅又赔了邻居100元,请问王师傅一共亏了多少?

注意:斤与公斤的区别

一共亏了100+(45×2-35)=100+55=155元

高智商推理题!!

凶手会不会是男子捏?

如果男子知道女子的家不是在3楼,那么他从二楼出来后按了下二楼的上按钮后,就下楼跑到负一楼等待,在负一楼把女纸杀害,作案工具丢在了负一楼。然后跟着女纸的尸体乘坐电梯来到二楼,他从二楼下楼梯,二楼的血也有可能是他带出来的,所以正好老妇人爬上来的时候正好看见他从二楼下来。(先不说老妇人上楼,而男子下楼。就电梯耽搁和老妇人等待的时间,男子都不可能一楼都没走完)三楼因为有小女孩等待上楼按了上按钮,所以电梯在三楼停了下来。

高智商推理故事,求答案!

被吊死的人不会喊出声,二楼的人说了谎

来一些高智商推理题

第一题,电话是妈妈打来的,身边接自己的不是妈妈,而是鬼。第二题,小陈看到的是后脑,这个美女没有脸。第三题,因为厨房里根本就没有镜子,他看到的真的是鬼。第四题,因为车里没有下雨,他的手上却湿了,而且他的手上不是雨水,是血水。

有没有几个烧脑的高智商推理故事?

其实你可以直接在百度上搜

逻辑推理题 高智商的人进

1.假设A说的是,我不是犯人并且是真话的情况.(推理:A不是犯人不是骗子,)

推理:C是骗子(他头半句就错了),B是犯人(没得选他必须诚实),问题出来了,这时B也是骗子了(看他后半句),所以这不成立.

2.假设A说的是,我是犯人并且是真话的情况.(推理:A是犯人)

推理:B是骗子(他头半句就错了),C不是犯人也不是骗子(没得选他必须这样),成立.

3.假设A说的是,我不是犯人但却是假话的情况.(推理:A是骗子也是犯人),不成立.

4.假设A说的是,我是犯人但却是假话的情况.(推理:A是骗子)

推理:B和C的前半句互相矛盾,也就是说其中一定有一个撒谎了,照样不成立.

所以真相大白了.A是犯人.B骗子.C既不是骗子也不是犯人(鬼知道他干啥的,可能是挑粪的,嘿嘿!)

本来我一直觉得那第3个人有可能既是犯人又是骗子.

现在想想那是不可能的.其实题目给的条件已经非常明确了,是我多虑了.呵呵~!!

世界十大经典高智商推理问题?

答案:推理步骤简介:

1.挪威是1号房 牛奶是3号房

2.蓝是2号房

3.咖啡-绿是4号 白是5号房

4.英-红是3号房

5. 此时可以判定Dunhill-黄是1号,马是2号

6.假设丹-茶是5号房,则德-Prince是2号 blueMaster-啤酒就没有地方了,所以可以判定丹-茶是2号

7.则blueMaster-啤酒是5号

8.于是德-Prince是4号

9.于是Pall-鸟是3号

10. Blends是2号

11. 猫是1号

12. 矿泉水是1号

13. 瑞典-狗是5号

14. 最后那个德国人抽Prince喝咖啡 住绿房子 养鱼

详细的推理过程见下面的文字

第一间房子:

挪威人,屋子是黄色的,喝水,抽 Dunhill,养的是猫。

第二间房子:

丹麦人,屋子是蓝色的,喝茶,抽 Blends,养的是马。

第三间房子:

英国人,屋子是红色的,喝牛奶,抽 Pall Mall,养的是鸟。

第四间房子:

德国人,屋子是绿色的,喝咖啡,抽 Prince,养的是鱼。

第五间房子:

瑞典人,屋子是白色的,喝啤酒,抽 Blue Master,养的是狗。

养鱼的是德国人

推理过程:

首先定位一点,我们是按照房子的位置,从左至右,12345依次排开

挪威人住第1间房,在最左边。∵英国人住红色房子,挪威人住蓝色房子隔壁,∴挪威人房子的颜色只能是绿、黄、白,又∵绿色房子在白色房子左面,挪威人住蓝色房子隔壁,∴挪威人只能住黄色房子,抽Dunhill香烟,∴第2间房是蓝色房子,又∵养马的人住在抽Dunhill香烟的人隔壁,所以第2间房子的主人养马。∵绿色房子在白色房子左面,∴绿色房子只能在第3或者第4间。如果绿色房子在第3间(即中间那间),∵住在中间房子的人喝牛奶,∴绿色房子的主人喝牛奶,这与条件中绿色房子主人喝咖啡相矛盾。∴假设错误,绿色房子在第4间,其主人喝咖啡。进一步推出第3间房子是红色房子,住英国人,喝牛奶。第5间房子是白色房子。∵丹麦人喝茶,绿色房子主人喝咖啡,英国人喝牛奶,抽Blue Master的人喝啤酒,∴挪威人只能喝水。∵抽Blends香烟的人有一个喝水的邻居,∴抽Blends香烟的人只能住第2间房子。

现在我们来整理一下,第1间房子是黄色房子,住挪威人,抽Dunhill香烟,喝水。第2间房子是蓝色房子,主人养马,抽Blends香烟。第3间房子是红色房子,住英国人,喝牛奶。绿色房子在第4间,其主人喝咖啡。第5间房子是白色房子。∵抽Blue Master的人喝啤酒,∴既抽Blue Master,又喝啤酒的人只能住在第5间房子。∵德国人抽Prince香烟,∴德国人只能住第4间房子。∵抽Pall Mall香烟的人养鸟,∴只有英国人抽Pall Mall香烟,养鸟。∵抽Blends香烟的人住在养猫的人隔壁,又∵抽Blends香烟的人的隔壁只可能是挪威人或者英国人,∴养猫的人是挪威人或者英国人,又∵英国人养鸟,∴养猫的人是挪威人。

现在我们再来整理一下,第1间房子是黄色房子,住挪威人,抽Dunhill香烟,喝水,养猫。第2间房子是蓝色房子,主人养马,抽Blends香烟。第3间房子是红色房子,住英国人,喝牛奶,Pall Mall香烟,养鸟。第4间房子是绿色房子,住德国人,抽Prince香烟,喝咖啡。第5间房子是白色房子,主人抽Blue Master,喝啤酒。∵瑞典人养狗,又∵第1,2,3间房子的主人都不养狗,第4间房子的主人是德国人,∴第5间房子住瑞典人,养狗。∵第1,3,4,5间房子的主人分别是挪威人,英国人,德国人,瑞典人,∴第2间房子的主人是丹麦人,喝茶。

最后将战果整理一下,第1间房子是黄色房子,住挪威人,抽Dunhill香烟,喝水,养猫;第2间房子是蓝色房子,住丹麦人,抽Blends香烟,喝茶,养马;第3间房子是红色房子,住英国人,抽Pall Mall香烟,喝牛奶,养鸟;第4间房子是绿色房子,住德国人,抽Prince香烟,喝咖啡;第5间房子是白色房子,住瑞典人,抽Blue Master,喝啤酒,养狗。

结论:如果其中有人养鱼,则养鱼的必定是德国人!

爱因斯坦”高智商逻辑推理

不能一会儿用口算出来,直接在网上搜得了下面资料

1 2 3 4 5

挪威 丹麦 英国 德国 瑞典

黄色 蓝色 红色 绿色 白色

Dunhill Blend pall mall prinee bine msier

开水 茶 牛奶 咖啡 啤酒

猫 马 鸟 鱼 狗

#include <iostream.h>

char* people[5] = {NULL};

char* color[5] = {NULL};

char* smoke[5] = {NULL};

char* drink[5] = {NULL};

char* pet[5] = {NULL};

/*

char* people[] = {"挪威","丹麦","英国","德国","瑞典"};

char* color[] = {"黄色","蓝色","红色","绿色","白色"};

char* smoke[] = {"Dunhill","Blend","Pall Mall","Prinee","Bine Masier"};

char* drink[] = {"开水","茶","牛奶","咖啡","啤酒"};

char* pet[] = {"猫","马","鸟","鱼","狗"};

*/

void print_single_result(const char* remark, char* a[])

{

cout << remark << endl;

for( int i = 0; i < 5; i ++ )

{

if( NULL == a[i] )

cout << "NULL";

else

cout << a[i];

cout << "\t" << flush;

}

cout << endl;

}

void print_result()

{

print_single_result("people", people);

print_single_result("color", color);

print_single_result("smoke", smoke);

print_single_result("drink", drink);

print_single_result("pet", pet);

}

int foo(const int level);

int main()

{

if( 0 == foo(0) )

{

print_result();

}

return 0;

}

Top

{

/*

0. (drink[2]=="牛奶")

1. (people[0]=="挪威")

2. (people[i]=="英国"&&color[i]=="红色")

3. (people[i]=="瑞典"&&pet[i]=="狗")

4. (people[i]=="丹麦"&&drink[i]=="茶")

5. (color[i]=="绿色"&&drink[i]=="咖啡")

6. (smoke[i]=="Bine Masier"&&drink[i]=="啤酒")

7. (smoke[i]=="Pall Mall"&&pet[i]=="鸟")

8. (color[i]=="黄色"&&smoke[i]=="Dunhill")

9. (people[i]=="德国"&&smoke[i]=="Prinee")

10. (color[i]=="绿色"&&color[j]=="白色"&&(i<j))

11. (smoke[i]=="Dunhill"&&pet[j]=="马"&&(i=j-1||i=j+1))

12. (smoke[i]=="Blend"&&pet[j]=="猫"&&(i=j-1||i=j+1))

13. (people[i]=="挪威"&&color[j]=="蓝色"&&(i=j-1||i=j+1))

14. (drink[i]=="开水"&&smoke[j]=="Blend"&&(i=j-1||i=j+1))

*/

switch(level)

{

case 0 :

{

int isNull = 0;

if( drink[2] != NULL && strcmp(drink[2],"牛奶") ) return 1;

if( drink[2] == NULL ) isNull = 1;

if( isNull ) drink[2] = "牛奶";

if( 0 == foo(level+1) ) return 0;

if( isNull ) drink[2] = NULL;

return 1;

}

break;

case 1 :

{

int isNull = 0;

if( people[0] != NULL && strcmp(people[0],"挪威") ) return 1;

if( people[0] == NULL ) isNull = 1;

if( isNull ) people[0] = "挪威";

if( 0 == foo(level+1) ) return 0;

if( isNull ) people[0] = NULL;

return 1;

}

break;

case 2 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( people[i] != NULL && strcmp(people[i],"英国") ) continue;

if( color[i] != NULL && strcmp(color[i],"红色") ) continue;

if( people[i] == NULL ) isNull1 = 1;

if( color[i] == NULL ) isNull2 = 1;

if( isNull1 ) people[i] = "英国";

if( isNull2 ) color[i] = "红色";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) people[i] = NULL;

if( isNull2 ) color[i] = NULL;

}

return 1;

}

break;

case 3 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( people[i] != NULL && strcmp(people[i],"瑞典") ) continue;

if( pet[i] != NULL && strcmp(pet[i],"狗") ) continue;

if( people[i] == NULL ) isNull1 = 1;

if( pet[i] == NULL ) isNull2 = 1;

if( isNull1 ) people[i] = "瑞典";

if( isNull2 ) pet[i] = "狗";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) people[i] = NULL;

if( isNull2 ) pet[i] = NULL;

}

return 1;

}

break;

case 4 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( people[i] != NULL && strcmp(people[i],"丹麦") ) continue;

if( drink[i] != NULL && strcmp(drink[i],"茶") ) continue;

if( people[i] == NULL ) isNull1 = 1;

if( drink[i] == NULL ) isNull2 = 1;

if( isNull1 ) people[i] = "丹麦";

if( isNull2 ) drink[i] = "茶";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) people[i] = NULL;

if( isNull2 ) drink[i] = NULL;

}

return 1;

}

break;

Top

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( color[i] != NULL && strcmp(color[i],"绿色") ) continue;

if( drink[i] != NULL && strcmp(drink[i],"咖啡") ) continue;

if( color[i] == NULL ) isNull1 = 1;

if( drink[i] == NULL ) isNull2 = 1;

if( isNull1 ) color[i] = "绿色";

if( isNull2 ) drink[i] = "咖啡";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) color[i] = NULL;

if( isNull2 ) drink[i] = NULL;

}

return 1;

}

break;

case 6 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( smoke[i] != NULL && strcmp(smoke[i],"Bine Masier") ) continue;

if( drink[i] != NULL && strcmp(drink[i],"啤酒") ) continue;

if( smoke[i] == NULL ) isNull1 = 1;

if( drink[i] == NULL ) isNull2 = 1;

if( isNull1 ) smoke[i] = "Bine Masier";

if( isNull2 ) drink[i] = "啤酒";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) smoke[i] = NULL;

if( isNull2 ) drink[i] = NULL;

}

return 1;

}

break;

case 7 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( smoke[i] != NULL && strcmp(smoke[i],"Pall Mall") ) continue;

if( pet[i] != NULL && strcmp(pet[i],"鸟") ) continue;

if( smoke[i] == NULL ) isNull1 = 1;

if( pet[i] == NULL ) isNull2 = 1;

if( isNull1 ) smoke[i] = "Pall Mall";

if( isNull2 ) pet[i] = "鸟";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) smoke[i] = NULL;

if( isNull2 ) pet[i] = NULL;

}

return 1;

}

break;

case 8 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( color[i] != NULL && strcmp(color[i],"黄色") ) continue;

if( smoke[i] != NULL && strcmp(smoke[i],"Dunhill") ) continue;

if( color[i] == NULL ) isNull1 = 1;

if( smoke[i] == NULL ) isNull2 = 1;

if( isNull1 ) color[i] = "黄色";

if( isNull2 ) smoke[i] = "Dunhill";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) color[i] = NULL;

if( isNull2 ) smoke[i] = NULL;

}

return 1;

}

break;

case 9 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0, isNull2=0;

if( people[i] != NULL && strcmp(people[i],"德国") ) continue;

if( smoke[i] != NULL && strcmp(smoke[i],"Prinee") ) continue;

if( people[i] == NULL ) isNull1 = 1;

if( smoke[i] == NULL ) isNull2 = 1;

if( isNull1 ) people[i] = "德国";

if( isNull2 ) smoke[i] = "Prinee";

if( 0 == foo(level+1) ) return 0;

if( isNull1 ) people[i] = NULL;

if( isNull2 ) smoke[i] = NULL;

}

return 1;

}

break;

Top

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0;

if( color[i] != NULL && strcmp(color[i],"绿色") ) continue;

if( color[i] == NULL ) isNull1 = 1;

if( isNull1 ) color[i] = "绿色";

int j;

for( j = i+1; j < 5; j ++ )

{

int isNull2=0;

if( color[j] != NULL && strcmp(color[j],"白色") ) continue;

if( color[j] == NULL ) isNull2 = 1;

if( isNull2 ) color[j] = "白色";

if( 0 == foo(level+1) ) return 0;

if( isNull2 ) color[j] = NULL;

}

if( isNull1 ) color[i] = NULL;

}

return 1;

}

break;

case 11 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0;

if( smoke[i] != NULL && strcmp(smoke[i],"Dunhill") ) continue;

if( smoke[i] == NULL ) isNull1 = 1;

if( isNull1 ) smoke[i] = "Dunhill";

if( i-1>=0 )

{

int j = i-1;

int isNull2=0;

if( pet[j] == NULL || !strcmp(pet[j],"马") )

{

if( pet[j] == NULL ) isNull2 = 1;

if( isNull2 ) pet[j] = "马";

if( 0 == foo(level+1) ) return 0;

if( isNull2 ) pet[j] = NULL;

}

}

if( i+1<=4 )

{

int j = i+1;

int isNull2=0;

if( pet[j] == NULL || !strcmp(pet[j],"马") )

{

if( pet[j] == NULL ) isNull2 = 1;

if( isNull2 ) pet[j] = "马";

if( 0 == foo(level+1) ) return 0;

if( isNull2 ) pet[j] = NULL;

}

}

if( isNull1 ) smoke[i] = NULL;

}

return 1;

}

break;

case 12 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0;

if( smoke[i] != NULL && strcmp(smoke[i],"Blend") ) continue;

if( smoke[i] == NULL ) isNull1 = 1;

if( isNull1 ) smoke[i] = "Blend";

if( i-1>=0 )

{

int j = i-1;

int isNull2=0;

if( pet[j] == NULL || !strcmp(pet[j],"猫") )

{

if( pet[j] == NULL ) isNull2 = 1;

if( isNull2 ) pet[j] = "猫";

if( 0 == foo(level+1) ) return 0;

if( isNull2 ) pet[j] = NULL;

}

}

if( i+1<=4 )

{

int j = i+1;

int isNull2=0;

if( pet[j] == NULL || !strcmp(pet[j],"猫") )

{

if( pet[j] == NULL ) isNull2 = 1;

if( isNull2 ) pet[j] = "猫";

if( 0 == foo(level+1) ) return 0;

if( isNull2 ) pet[j] = NULL;

}

}

if( isNull1 ) smoke[i] = NULL;

}

return 1;

}

break;

case 13 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0;

if( people[i] != NULL && strcmp(people[i],"挪威") ) continue;

if( people[i] == NULL ) isNull1 = 1;

if( isNull1 ) people[i] = "挪威";

if( i-1>=0 )

{

int j = i-1;

int isNull2=0;

if( color[j] == NULL || !strcmp(color[j],"蓝色") )

{

if( color[j] == NULL ) isNull2 = 1;

if( isNull2 ) color[j] = "蓝色";

if( 0 == foo(level+1) ) return 0;

if( isNull2 ) color[j] = NULL;

}

}

if( i+1<=4 )

{

int j = i+1;

int isNull2=0;

if( color[j] == NULL || !strcmp(color[j],"蓝色") )

{

if( color[j] == NULL ) isNull2 = 1;

if( isNull2 ) color[j] = "蓝色";

if( 0 == foo(level+1) ) return 0;

if( isNull2 ) color[j] = NULL;

}

}

if( isNull1 ) people[i] = NULL;

}

return 1;

}

break;

case 14 :

{

int i = 0;

for( i = 0; i < 5; i ++ )

{

int isNull1=0;

if( drink[i] != NULL && strcmp(drink[i],"开水") ) continue;

if( drink[i] == NULL ) isNull1 = 1;

if( isNull1 ) drink[i] = "开水";

if( i-1>=0 )

{

int j = i-1;

int isNull2=0;

if( smoke[j] == NULL || !strcmp(smoke[j],"Blend") )

{

if( smoke[j] == NULL ) isNull2 = 1;

if( isNull2 ) smoke[j] = "Blend";

return 0;

}

}

if( i+1<=4 )

{

int j = i+1;

int isNull2=0;

if( smoke[j] == NULL || !strcmp(smoke[j],"Blend") )

{

if( smoke[j] == NULL ) isNull2 = 1;

if( isNull2 ) smoke[j] = "Blend";

return 0;

}

}

if( isNull1 ) drink[i] = NULL;

}

return 1;

}

break;

default :

break;

}

return 1;

}

猜你喜欢