程式設計師有趣的面試智力題3

2021-09-01 05:23:33 字數 2099 閱讀 6408

17、乙個圓盤被塗上了黑白二色,兩種顏色各佔乙個半圓。圓盤以乙個未知的速度、按乙個未知的方向旋轉。你有一種特殊的相機可以讓你即時觀察到圓上的乙個點的顏色。你需要多少個相機才能確定圓盤旋轉的方向?

答案:你可以把兩個相機放在圓盤上相近的兩點,然後觀察哪個點先變色。事實上,只需要乙個相機就夠了。控制相機繞圓盤中心順時針移動,觀察顏色多久變一次;然後讓相機以相同的速度逆時針繞著圓盤中心移動,再次觀察變色的頻率。可以斷定,變色頻率較慢的那一次,相機的轉動方向是和圓盤相同的。

每匹馬都至少要有一次參賽的機會,所以25匹馬分成5組,一開始的這5場比賽是免不了的。接下來要找冠軍也很容易,每一組的冠軍在一起賽一場就行了(第6場)。最後就是要找第2和第3名。我們按照第6場比賽中得到的名次依次把它們在前5場比賽中所在的組命名為a、b、c、d、e。即:a組的冠軍是第6場的第1名,b組的冠軍是第6場的第2名……每一組的5匹馬按照他們已經賽出的成績從快到慢編號:

a組:1,23,4,5

b組:12,3,4,5

c組:1,2,3,4,5

d組:1,2,3,4,5

e組:1,2,3,4,5

從現在所得到的資訊,我們可以知道哪些馬已經被排除在3名以外。只要已經能確定有3匹或3匹以上的馬比這匹馬快,那麼它就已經被淘汰了。可以看到,只有上表中粗體的那5匹馬是有可能為2、3名的。即:a組的2、3名;b組的1、2名,c組的第1名。取這5匹馬進行第7場比賽,第7場比賽的前兩名就是25匹馬中的2、3名。故一共最少要賽7場。

這道題有一些變體,比如64匹馬找前4名。方法是一樣的,在得出第1名以後尋找後3名的候選競爭者就可以了。

19、題目如下:

0 1 2 3 4 5 6 7 8 9

_ _ _ _ _ _ _ _ _ _

在橫線上填寫數字,使之符合要求。

要求如下:對應的數字下填入的數,代表上面的數在下面出現的次數,比如3下面是1,代表3要在下面出現一次。

正確答案是:0 1 2 3 4 5 6 7 8 9

6 2 1 0 0 0 1 0 0 0

我的思路是:因為第二行的數字是第一行的數在下面出現的次數,下面10個格仔,總共10次。。。所以第2排數字之和為10。

首先從0入手,先填9,肯定不可能,9下面要是1,只剩8個位填0,不夠填8,8下面要填1,1要至少填2,後面不用再想,因為已經剩下7個位置,不夠填0……如此類推。到0下面填6的時候就得到我上面的答案了。。

其實可以推出這個題目的兩個關鍵條件:

1、第2排數字之和為10。

2、兩排數字上下相乘之和也是10!

滿足這兩個條件的就是答案,下面來編寫程式實現!

[cpp]view plain

copy

//原始數值: 0,1,2,3,4,5,6,7,8,9

//出現次數: 6,2,1,0,0,0,1,0,0,0

#include "iostream"

using

namespace

std;  

#define len 10

class

numbertb  

;  numbertb::numbertb()  

}  int*numbertb::getbottom()  

return

bottom;  

}  //set next bottom

void

numbertb::setnextbottom()  

}  success = reb;  

}  //get frequency in bottom

intnumbertb::getfrequecy(

intnum) 

//此處的num 即指上排的數i

return

count; 

//cout 即對應frequecy

}  int

main(

void

)    

cout);  

return

0;  

}  

程式設計師有趣的面試智力題

1 考慮乙個雙人遊戲。遊戲在乙個圓桌上進行。每個遊戲者都有足夠多的硬幣。他們需要在桌子上輪流放置硬幣,每次必需且只能放置一枚硬幣,要求硬幣完全置於桌面內 不能有一部分懸在桌子外面 並且不能與原來放過的硬幣重疊。誰沒有地方放置新的硬幣,誰就輸了。遊戲的先行者還是後行者有必勝策略?這種策略是什麼?答案 ...

程式設計師有趣的面試智力題

偶然間在網上看到幾個原來沒見過的面試智力題,有幾個題目在國內流傳相當廣,什麼n個人怎麼分餅最公平,屋裡的三個燈泡分別由哪個開關控制,三架飛機環遊世界,用火柴和兩根繩子測量45分鐘之類的題目,火星得已經可以考古了,這裡就不再說了。1 考慮乙個雙人遊戲。遊戲在乙個圓桌上進行。每個遊戲者都有足夠多的硬幣。...

程式設計師有趣的面試智力題

偶然間在網上看到幾個原來沒見過的面試智力題,有幾個題目在國內流傳相當廣,什麼n個人怎麼分餅最公平,屋裡的三個燈泡分別由哪個開關控制,三架飛機環遊世界,用火柴和兩根繩子測量45分鐘之類的題目,火星得已經可以考古了,這裡就不再說了。1 考慮乙個雙人遊戲。遊戲在乙個圓桌上進行。每個遊戲者都有足夠多的硬幣。...