程式設計師學學智力題

2021-07-31 04:44:40 字數 3992 閱讀 6876

關於智力題的心得:一般來說:

- 題目語句中出現提示「無法確定」的情況,證明該組合有2個以上的可能性,這是乙個關鍵切入點

- 有些題目採用「負負得正」的解放,這是乙個隱藏的條件

- 推理的題目用小數字慢慢推敲,找規律

答案:先行者在桌子中心放置一枚硬幣,以後的硬幣總是放在與後行者剛才放的地方相對稱的位置。這樣,只要後行者能放,先行者一定也有地方放。先行者必勝。

答案:注意到平分矩形面積的線都經過矩形的中心。過大矩形和空心矩形各自的中心畫一條線,這條線顯然把兩個矩形都分成了一半,它們的差當然也是相等的。

答案:1.2.4

答案: 1. 兩頭一齊燒;2.1根一頭燒,另一根兩頭燒,兩頭燒完是半小時,然後點燃一頭燒的另一頭,得到45分鐘的燃燒事件,然後還差30分鐘,***。

答案:他應該先問:你的神志是否清醒?

若回答:是,那就一定是人;若回答:不是,那就一定是吸血鬼.

然後再問:你是不是人?

這時已經知道他是人還是吸血鬼,如果他是人,然後回答「是」,那他一定是神志清醒的人,如果回答「不是」,那他就肯定是精神錯亂的人.如果他是吸血鬼,然後回答「是」,那他一定是神志清醒的鬼,如果回答「不是」,那他就肯定是精神錯亂的鬼

答:有三個人戴黑帽。假設有n個人戴黑,當n=1時,戴黑人看見別人都為白則能肯

定自己為黑。於是第一次關燈就應該有聲。可以斷定n>1。對於每個戴黑的人來說,他能看見n-1頂黑帽,並由此假定自己為白。但等待n-1次還沒有人打自己以後,每個戴黑人都能知道自己也是黑的了。所以第n次關燈就有n個人打自己。

答案分析: 1號海盜分給3號1枚金幣,4號或5號2枚金幣,自己則獨得97枚金幣,即分配方案為(97,0,1,2,0)或(97,0,1,0,2)。

- 首先從5號海盜開始,因為他是最安全的,沒有被扔下大海的風險,因此他的策略也最為簡單,即最好前面的人全都死光光,那麼他就可以獨得這100枚金幣了。

- 接下來看4號,他的生存機會完全取決於前面還有人存活著,因為如果1號到3號的海盜全都喂了鯊魚,那麼在只剩4號與5號的情況下,不管4號提出怎樣的分配方案,5號一定都會投反對票來讓4號去喂鯊魚,以獨吞全部的金幣。哪怕4號為了保命而討好5號,提出(0,100)這樣的方案讓5號獨佔金幣,但是5號還有可能覺得留著4號有危險,而投票反對以讓其喂鯊魚。因此理性的4號是不應該冒這樣的風險,把存活的希望寄託在5號的隨機選擇上的,他惟有支援3號才能絕對保證自身的性命。

- 再來看3號,他經過上述的邏輯推理之後,就會提出(100,0,0)這樣的分配方案,因為他知道4號哪怕一無所獲,也還是會無條件的支援他而投贊成票的,那麼再加上自己的1票就可以使他穩獲這100金幣了。

- 但是,2號也經過推理得知了3號的分配方案,那麼他就會提出(98,0,1,1)的方案。因為這個方案相對於3號的分配方案,4號和5號至少可以獲得1枚金幣,理性的4號和5號自然會覺得此方案對他們來說更有利而支援2號,不希望2號出局而由3號來進行分配。這樣,2號就可以屁顛屁顛的拿走98枚金幣了。

- 不幸的是,1號海盜更不是省油的燈,經過一番推理之後也洞悉了2號的分配方案。他將採取的策略是放棄2號,而給3號1枚金幣,同時給4號或5號2枚金幣,即提出(97,0,1,2,0)或(97,0,1,0,2)的分配方案。由於1號的分配方案對於3號與4號或5號來說,相比2號的方案可以獲得更多的利益,那麼他們將會投票支援1號,再加上1號自身的1票,97枚金幣就可輕鬆落入1號的腰包了。

答案:由於最開始時燈是滅的,那麼只有經過奇數次改變開關狀態的燈是亮的。根據題意可知乙個數字有多少約數就要按下開關多少次,所以最後亮著的燈的數學解釋就是:燈的編號有奇數個不同的約數。

乙個數的約數按出現的奇偶個數分為以下兩種:

- 約數是成對出現的,比如8的約數對為:(1,8)、(2,4)

- 約數是單個出現的,比如36的約數對為:(1,36)、(2,18)、(3,12)、(4,9)、(6)可以看出6自己單獨是36的約數,而不是和別的數連在一起的。

- 所以只有平方數才會有奇數個整型約數,才滿足本題的要求。從1到100的平方數為:1、4、9、16、25、36、49、64、81、100,所以只有這些燈是亮的。

答案:(關於數字位數線性):for(n=0; b; b >>= 1) if (b & 1) n++;

答案:計算陣列中的所有數的和,再計算出從1到n-1的所有數的和,兩者之差即為重複的那個數。

答案:(b & (b-1)) == 0

答案:小猴每次走出一段再返回後都要多吃幾根香蕉,所以要想多搬回香蕉,辦法就是盡量少返回,而返回的原因是一次最多能夠搬50根,當香蕉多餘50根的時候一次不能搬盡,要返回再搬,所以第一次走出n公尺,返回剩餘的50根到距家50-n公尺處,剩餘100-3n根,根據上面的分析,100-3n要小於50,由於每次返回都要多消耗2n根,所以n要盡量小,即剩餘的根數要盡量大且小於50。

- 則 100-3n<=50

- 得 n<=17

- 所以第一次應走出17公尺後再返回,剩餘100-17*3=49根,此時距家33公尺,所以到家最多能夠剩餘16根香蕉

答案:買20瓶,20得10瓶,10瓶得5瓶,5瓶其中乙個空瓶先不管,4瓶得2瓶,2瓶得1瓶,1瓶+之前不管的1瓶得1瓶,結束。20+10+5+2+1+1=39

答案:答案應該是2,2,9

(過程)舉三個數相加得13的情況如下:

1 1 11(11) 1 2 10(20) 1 3 9(27) 1 4 8(32) 1 5 7(35)

1 6 6(36) 2 2 9(36) 2 3 8(48) 2 4 7(56) 2 5 6(60)

3 3 7(63) 3 4 6(72) 3 5 5(75)

4 4 5(80)

其中括號中的數字為三數之積,這裡只有兩種情況的數字相等,故父親必然36。

否則那個下屬必然可以判斷出三個女孩的年齡,再根據只有乙個女兒的頭髮是黑的,

因此排除了1,6,6的情況,即得答案 .

答案:這是最基本的負負得正的題目,如果只把焦點聚在「乙個人永遠說真話,乙個人永遠說假話」是解不了題目的,缺少更多的條件,但是這種題目一般隱藏了另乙個條件,就是這個人知道另外乙個的情況。所以可以通過負負得正的解法,問其中乙個人,另外乙個人會要求我選擇哪條路,然後採用相反的答案即可。

假設你問的是說真話的人,問的人會指出說謊人指出的錯誤的路。

假設你問的是說謊話的人,會被回答說出真話人說的相

答案:把字串切成長為m和n-m的兩半。將這兩個部分分別逆序,再對整個字串逆序。

答案:我會被五馬分屍。

tip : 上面中第2題和第3題都是採用了「負負得正」的思想,第3題參考了第2題的思想,把兩個字串當成兩個單詞,由於負負得正,你先對整個字串逆序再將兩個部分分別逆序效果是一樣的。

有些問題,直接解有難度,邏輯混亂,但是用反推和轉換角度的辦法一下子就可以得到正確的答案。

答案:直接計算小鳥來回飛的距離很困難,但是我們不直接從小鳥具體來回飛來計算具體距離,從路程=速度時間的角度來想,小鳥一直做勻速運動,而運動的時間就是火車相遇的時間,時間=s/30,所以飛的距離= s/30 30 = s ,是洛杉磯和紐約的距離。

答案:1號罐取1丸,2號罐取2丸,3號罐取3丸,4號罐取4丸,稱量該10個藥丸,比正常重量重幾就是幾號罐的藥有問題。

參***:

1、小明和小明弟弟過橋,需要花費3秒(小明弟弟慢,花3秒),計t1 = 3秒,總用時tc=3秒;

2、小明回來,需要花費1秒,記t2=1秒,總用時tc=4秒;

3、小明爺爺和小明媽媽一起過橋,需要花費12秒,記t3=12,總用時tc=16秒;

4、小明弟弟回來,需要花費3秒,記t4=3秒,總用時tc=19秒;

5、小明和小明爸爸一起過橋,需要花費6秒,記t5=6秒,總用時tc=25秒;

6、小明回來,需要花費1秒,記t6=1秒,總用時tc=26秒;

7、小明和小明弟弟一起過橋,需要花費3秒,記t7=3秒,總用時tc=29秒;

這樣,在第3步,小明爺爺和媽媽過橋後留下,第5步,小明爸爸過橋後留下,第7步,小明和小明弟弟過橋後,一家人成功在30秒內過橋。

==tip==:

- 過橋速度受最慢的人的影響,而且還要走回來(傳燈),所以讓速度快的一組先過去

- 然後慢的一組過去,速度最快的和第二快的輪流送人過去

答案:39

智力題(程式設計師面試經典)

no.1 有20瓶藥丸,其中19瓶裝有1克 粒的藥丸,餘下一瓶裝有1.1克 粒的藥丸。給你一台稱重精準的天平,怎麼找出比較重的那瓶藥丸?天平只能用一次。解法有時候,嚴格的限制條件有可能反倒是解題的線索。在這個問題中,限制條件是天平只能用一次。因為天平只能用一次,我們也得以知道乙個有趣的事實 一次必須...

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

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

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

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