在第4章提到的大多數(shù)甚至是全部的微軟面試問題在其他公司都得到了廣泛的應(yīng)用。隨著難題面試的應(yīng)用范圍越來越廣泛,這本“難題冊”上也開始增加了許多新的問題。有的難題十分難解,并要求在一定的時(shí)間內(nèi)完成,這或許是一種攀比心理作怪吧(既然微軟問這些問題,那么我們問的問題比微軟還要難,以便招聘到更優(yōu)秀的員工)。下面是幾個(gè)得到廣泛應(yīng)用的最難的面試難題。
為什么易拉罐兩頭縮?。?/p>
搬走富士山要多長時(shí)間?
過道里有三個(gè)開關(guān),有一個(gè)開關(guān)控制過道最遠(yuǎn)端一個(gè)房間里的照明裝置。房間里的門是關(guān)著的,你現(xiàn)在的位置看不到燈是關(guān)著的還是開著的。你的任務(wù)是確定三個(gè)開關(guān)中哪一個(gè)開關(guān)控制這個(gè)照明裝置。問題:如果只允許你到這個(gè)房間去一次,你能做到這一點(diǎn)嗎?
你與一個(gè)對手玩這樣的游戲:游戲用品是一個(gè)桌面空無一物的長方形桌子和無限量供應(yīng)的硬幣。你和對手輪流放一枚硬幣到桌子上,放硬幣的位置隨意。游戲的規(guī)則是你放硬幣時(shí)不能讓現(xiàn)在要放的硬幣與已經(jīng)放到桌子上的硬幣接觸。你和你的對手輪流來放,直到桌子幾乎再也放不下為止。第一個(gè)不能放置硬幣的人認(rèn)輸。你先走。請說說你為這個(gè)游戲準(zhǔn)備的方案。
在一個(gè)孤島上有5個(gè)海盜要瓜分100塊金幣。他們將按下列方法來瓜分這些掠奪物:資格最老的海盜提出一個(gè)分配意見,然后大家對這個(gè)分配意見投票表決。如果至少有一半的人投了贊成票,就按照這個(gè)方案來劃分。如果沒有通過,就殺掉這個(gè)資格最老的海盜。然后再由還活著的海盜中資格最老的海盜來提出分配方案,按照同樣的方式來投票,接受這個(gè)方案或者再殺掉這個(gè)海盜。這個(gè)過程連續(xù)進(jìn)行,直到能夠找到一個(gè)大家接受的方案。如果你是那個(gè)老資格的海盜,你會(huì)提出怎樣的方案?(這些海盜不但貪婪,而且非常擅長邏輯推理,并且都有很強(qiáng)的求生欲望。)
一所中學(xué)在每周的最后一天都有一個(gè)慣例:學(xué)生們來到大廳里,站到他們關(guān)著的抽屜前。吹第一聲哨的時(shí)候,學(xué)生們把每一個(gè)抽屜都打開。吹第二聲哨的時(shí)候,學(xué)生們每隔一個(gè)關(guān)上一個(gè)抽屜(抽屜2、4、6等)。吹第三聲哨的時(shí)候,學(xué)生們每隔兩個(gè)開/關(guān)抽屜(開/關(guān)的意思是:如果抽屜是開著的,就把它關(guān)上;如果抽屜是關(guān)著的,就把它打開),他們開/關(guān)抽屜3、6、9等。吹第四聲哨的時(shí)候,學(xué)生們每隔三個(gè)抽屜開/關(guān)。吹第五聲哨的時(shí)候,學(xué)生每隔四個(gè)抽屜開/關(guān)。如此一直進(jìn)行下去。
現(xiàn)在讓我們把問題簡化一下。一所小學(xué)校,只有100個(gè)抽屜。那么當(dāng)哨聲響到100聲的時(shí)候,站在100號(hào)抽屜旁邊的學(xué)生(而且只有這個(gè)學(xué)生)開/關(guān)了自己的抽屜。請問現(xiàn)在有多少個(gè)抽屜是開著的?
你有兩根長度不一樣的引信。每一根引信都剛好能夠燃燒1小時(shí),但是兩根引信結(jié)構(gòu)并不相同,也不是以恒定的速度燃燒。有的部分燃燒速度快,有的部分燃燒速度慢。只使用一個(gè)打火機(jī)和這兩根引信,你怎樣測出45分鐘的時(shí)間?
你正在一只小船里,小船在一個(gè)正圓形湖面的正中心。湖濱有一個(gè)妖怪,這個(gè)妖怪想加害于你,但它不會(huì)游泳,也沒有船。假設(shè)你能夠成功到達(dá)岸邊,正好妖怪不在那兒等著抓你,而你只要到達(dá)陸地,就可以逃脫掉。問題是:妖怪跑步的速度是你小船最快速度的4倍。妖怪視力極佳,而且從不睡覺,并且特別擅長邏輯推理,它將用盡自己的所有智慧和精力去抓你。你怎樣逃脫?