经典面试、笔试题
目錄
- IBM面試:幾只狗生病
- 騰訊面試題:給出上排數,寫出下排數
- 阿里巴巴面試題:男女比例
- 淘寶筆試題:N個雞蛋放到M個籃子中
- 百度移動開發筆試題:荷蘭國旗(三色球排序問題)
IBM面試:幾只狗生病
村子中有50個人,每人有一條狗。在這50條狗中有病狗(這種病不會傳染)。于是人們就要找出病狗。
每個人可以觀察其他的49條狗,以判斷它們是否生病(如果有病一定能看出來),只是自己的狗不能看。觀察后得到的結果不得交流,也不能通知病狗的主人。主人一旦推算出自己家的是病狗就要槍斃自己的狗(發現后必須在一天內槍斃),而且每個人只有權利槍斃自己的狗,沒有權利打死其他人的狗。
第一天大家全看完了,但槍沒有響,第二天仍沒有槍響。到了第三天傳來一陣槍聲,問村里共有幾條病狗,如何推算得出?
解析:3條。
思路:若只有一條病狗,第一天病狗的主人看不到病狗,從一定有病狗這一事實推斷,自己的狗是病狗,從而在第一天就會槍斃自己的狗;
若有兩條病狗,第一天,這兩天病狗的主人都看到了一條病狗,但這時沒法推斷自家的狗是不是病狗,第一天不會有狗被槍斃。第二天的時候,因為第一天沒有狗被槍斃,從而可以推斷出不止一條病狗,這兩條病狗的主人就會在第二天槍斃自己的狗。
……
以此類推,若第n天有槍響,則有n條病狗。
騰訊面試題:給出上排數,寫出下排數
給你10分鐘時間,根據上排給出十個數,在其下排填出對應的十個數,要求下排每個數都是先前上排那十個數在下排出現的次數。上排的十個數如下:【0,1,2,3,4,5,6,7,8,9】
解析:下排的十個數為:【6,2,1,0,0,0,1,0,0,0】
思路:因為下排的每個數字都是對應的上排數字在下排出現的次數。因此,可以得到幾個式子:
設下排的十個數為【n0,n1,n2,…,n9】。
(1)n0+n1+n2+…+n9=10
(2)(n0 * 0)+ (n1 * 1)+(n2 * 2)+…+(n9 * 9)=10
由(1)式可以得知,0<=n0,n1,n2,n3, … , n8,n9<=10
又結合(2)式可以推出:
n9可等于0或1。
若n9=1,則n0,n1,n2,…,n8中有一個數等于9。
結合(2)式可得知,只有可能n0或n1等于9。
- 若n0等于9,則n1~n9都為0,與前面n9=1矛盾。同理,n1也不能等于9。
因此n9不能等于1。由此推出n9=0
同理可推出n8,n7,n6,…,n1,n0的值。結果為【6,2,1,0,0,0,1,0,0,0】
拓展:
上排有n個數,分別為【a1,a2,a3,…,an】,設下排的數為:【b1,b2,b3,…,bn】
則:(1)a1* b1+a2* b2+a3* b3+…+an* bn=n
??(2)b1+b2+b3+…+bn=n
且,若ai為負數,則bi一定等于0
結論:0出現的次數為n-4,1出現的次數為2,2出現的次數為1。n-4出現的次數為1。如果數列中無這四個數,則無解。
【前面兩個式子就是突然間想到的,至于為什么、怎么得來的,我也不是很理解。后來看到篇博客也寫到了這個式子,想了解透徹些的,可以看看:https://blog.csdn.net/wcyoot/article/details/6428305
】
阿里巴巴面試題:男女比例
澳大利亞的父母喜歡女孩,如果生出來的第一個女孩,就不再生了,如果是男孩就繼續生,直到生到第一個女孩為止,問若干年后,男女的比例是多少?
解析:1:1
原文鏈接:https://blog.csdn.net/hanchengxi/article/details/9410165
淘寶筆試題:N個雞蛋放到M個籃子中
N個雞蛋放到M個籃子中,籃子不能為空,要滿足:對任意不大于N的數量,能用若干個籃子中雞蛋的和表示。對輸入整數N和M,輸出所有可能的雞蛋的放法。
解析:
原文鏈接:https://www.cnblogs.com/null00/archive/2012/06/20/2555541.html
百度移動開發筆試題:荷蘭國旗(三色球排序問題)
三色球排序的問題,相同的球放到一起,讓你按順序輸出紅白藍三種顏色的球,可以用012來表示,要求只能掃描一次數組。
解析:
原文鏈接:https://blog.csdn.net/Manketon/article/details/39522821
總結
- 上一篇: 北汽威旺一档无力起步响北汽威旺一档起步无
- 下一篇: 德斯顿与倍适登汽车减震器哪个好?