兩道阿里前端面試中的邏輯題(表示本人是第一次聽說前端遇到智力題,看來還得加油,不斷擴展自己的視野),題目來源至妙味BBS的一位簽了阿里巴巴的高手的面試題目分享(http://bbs.miaov.com/forum.php?mod=viewthread&tid=13233&highlight=面試);這里自己解答兩道邏輯題以保存。
邏輯題1:一群人開舞會,每人頭上都戴着一頂帽子。帽子只有黑白兩種,黑的至少有一頂。每個人都能看到其他人帽子的顏色,卻不知自己的。主持人先讓大家看看別人頭上戴的什么帽子,然后關燈,如果有人認為自己戴的是黑帽子,就打自己一個耳光。第一次關燈,沒有聲音。於是再開燈,大家再看一遍,關燈時仍然鴉雀無聲。一直到第三次關燈,才有劈劈啪啪打耳光的聲音響起。問有多少人戴着黑帽子?
答:3
第一次開燈:大家肯定都看到了至少有1頂黑帽子,否則如果有人看到都是白帽子,那個人就會打自己耳光(因為至少有1頂黑帽子);然而大家都沒有打自己耳光,說明至少有兩頂黑帽子存在。
第二次開燈:每一個人都看到至少有兩頂黑帽子,所以沒打自己耳光(如果剛好兩頂,必然有兩個人只看到1頂黑帽子;看到只有一頂黑帽子的人一定會打自己耳光);因此總共有至少3頂黑帽子。
第三次開燈:此時大家都知道總共至少有三頂黑帽子;如果有看到只有2個黑帽子人,肯定會知道自己戴的也是黑帽子,那么肯定會打自己耳光;如果大家都看到3個包括以上的黑帽子,肯定不會有人打耳光。
因此可以推出總共有3頂黑帽子;
邏輯題2:你讓某些人為你工作了七天, 你要用一根金條作為報酬.這根金條要被分成七塊.你必須在每天的活干完后交給他們一塊.如果你只能將這根金條切割兩次,你怎樣給這些工人分?
答:7=面值1+面值2+面值4
第一天:給出去面值1的一塊;
第二天:給出去面值2的一塊,找回面值1的一塊;
第三天:給出去面值1的一塊;
第四天:給出去面值4的一塊,找回面值2和面值1各一塊;
第五天:給出去面值1一塊;
第六天:給出去面值2的一塊,找回面值1的一塊;
第七天:給出去面值1的一塊。