IBM面試題:挑戰你的邏輯分析能力
IBM公司向來以高素質人才作為企業持續競爭力的保證。進入IBM公司是差不多每個IT人的夢想,偶然看到這條IBM公司的面試題,給大家試試看,看看是否具備進入IBM的實力!
村子中有50個人,每人有一條狗。在這50條狗中有病狗(這種病不會傳染)。於是人們就要找出病狗。每個人可以觀察其他的49條狗,以判斷它們是否生病,只有自己的狗不能看。觀察後得到的結果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的是病狗就要槍斃自己的狗,而且每個人只有權利槍斃自己的狗,沒有權利打死其他人的狗。第一天,第二天都沒有槍響。到了第三天傳來一陣槍聲,問有幾條病狗,如何推算得出?
IBM面試題第一種推論:
A、假設有1條病狗,病狗的主人會看到其他狗都沒有病,那麼就知道自己的狗有病,所以第一天晚上就會有槍響。因為沒有槍響,說明病狗數大於1。
B、假設有2條病狗,病狗的主人會看到有1條病狗,因為第一天沒有聽到槍響,是病狗數大於1,所以病狗的主人會知道自己的狗是病狗,因而第二天會有槍響。既然第二天也沒有槍響,說明病狗數大於2。
由此推理,如果第三天槍響,則有3條病狗。
IBM面試題第二種推論:
1 如果為1,第一天那條狗必死,因為狗主人沒看到病狗,但病狗存在。
2若為2,令病狗主人為a,b。a看到一條病狗,b也看到一條病狗,但a看到b的病狗沒死故知狗數不為1,而其他人沒病狗,所以自己的狗必為病狗,故開槍;而b的想法與a一樣,故也開槍。 由此,為2時,第一天看後2條狗必死。
3若為3條,病狗主人為a,b,c。a第一天看到2條病狗,若a設自己的不是病狗,由推理2,第二天看時,那2條狗沒死,故狗數肯定不是2,而其他人沒病狗,所以自己的狗必為病狗,故開槍;而b和c的想法與a一樣,故也開槍。 由此,為3時,第二天看後3條狗必死。
4若為4條,令狗主人為a,b,c,d。a第一天看到3條病狗,若a設自己的不是病狗,由推理3,第三天看時,那3條狗沒死,故狗數肯定不是3,而其他人沒病狗,所以自己的狗必為病狗,故開槍;而b和c,d的想法與a一樣,故也開槍。 由此,為4時,第三天看後4條狗必死。
5 餘下即為遞推了,由年n-1推出n。
答案:n為4。第四天看時,狗已死了,但是在第三天死的,故答案是3條。
延伸閱讀:
0 意見:
張貼留言