分享一些有趣的面試智力題1

2021-06-26 07:46:55 字數 2346 閱讀 8928

偶然進了這個頁面,看到幾個原來沒見過的面試智力題。順帶也翻譯一些比較少見、可能有人沒見過的題目寫在這裡。有幾個題目在國內流傳相當廣,什麼n個人怎麼分餅最公平,屋裡的三個燈泡分別由哪個開關控制,三架飛機環遊世界,用火柴和兩根繩子測量45分鐘之類的題目,火星得已經可以考古了,這裡就不再說了。個別題目本blog原來有過詳細的介紹,這裡也不再提了。

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

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

2. 用線性時間和常數附加空間將一篇文章的單詞(不是字元)倒序。

答案:先將整篇文章的所有字元逆序(從兩頭起不斷交換位置相對稱的字元);然後用同樣的辦法將每個單詞內部的字元逆序。這樣,整篇文章的單詞順序顛倒了,但單詞本身又被轉回來了。

3. 用線性時間和常數附加空間將乙個長度為n的字串向左迴圈移動m位(例如,」abcdefg」移動3位就變成了」defgabc」)。

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

4. 乙個矩形蛋糕,蛋糕內部有一塊矩形的空洞。只用一刀,如何將蛋糕切成大小相等的兩塊?

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

5. 一塊矩形的巧克力,初始時由n x m個小塊組成。每一次你只能把一塊巧克力掰成兩個小矩形。最少需要幾次才能把它們掰成n x m塊1×1的小巧克力?

答案:n x m – 1次顯然足夠了。這個數目也是必需的,因為每掰一次後當前巧克力的塊數只能增加一,把巧克力分成n x m塊當然需要至少掰n x m – 1次。

6. 如何快速找出乙個32位整數的二進位制表達裡有多少個」1″?用關於」1″的個數的線性時間?

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

答案2(關於」1″的個數線性):for(n=0; b; n++) b &= b-1;

7. 乙個大小為n的陣列,所有數都是不超過n-1的正整數。用o(n)的時間找出重複的那個數(假設只有乙個)。乙個大小為n的陣列,所有數都是不超過n+1的正整數。用o(n)的時間找出沒有出現過的那個數(假設只有乙個)。

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

8. 給出一行c語言表示式,判斷給定的整數是否是乙個2的冪。

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

9. 地球上有多少個點,使得從該點出發向南走一英里,向東走一英里,再向北走一英里之後恰好回到了起點?

答案:「北極點」是乙個傳統的答案,其實這個問題還有其它的答案。事實上,滿足要求的點有無窮多個。所有距離南極點1 + 1/(2π)英里的地方都是滿足要求的,向南走一英里後到達距離南極點1/(2π)的地方,向東走一英里後正好繞行緯度圈一周,再向北走原路返回到起點。事實上,這仍然不是滿足要求的全部點。距離南極點1 + 1/(2kπ)的地方都是可以的,其中k可以是任意乙個正整數。

10. a、b兩人分別在兩座島上。b生病了,a有b所需要的藥。c有一艘小船和乙個可以上鎖的箱子。c願意在a和b之間運東西,但東西只能放在箱子裡。只要箱子沒被上鎖,c都會偷走箱子裡的東西,不管箱子裡有什麼。如果a和b各自有一把鎖和只能開自己那把鎖的鑰匙,a應該如何把東西安全遞交給b?

答案:a把藥放進箱子,用自己的鎖把箱子鎖上。b拿到箱子後,再在箱子上加一把自己的鎖。箱子運回a後,a取下自己的鎖。箱子再運到b手中時,b取下自己的鎖,獲得藥物。

11. 一對夫婦邀請n-1對夫婦參加聚會(因此聚會上總共有2n人)。每個人都和所有自己不認識的人握了一次手。然後,男主人問其餘所有人(共2n-1個人)各自都握了幾次手,得到的答案全部都不一樣。假設每個人都認識自己的配偶,那麼女主人握了幾次手?

答案:握手次數只可能是從0到2n-2這2n-1個數。除去男主人外,一共有2n-1個人,因此每個數恰好出現了一次。其中有乙個人(0)沒有握手,有乙個人(2n-2)和所有其它的夫婦都握了手。這兩個人肯定是一對夫妻,否則後者將和前者握手(從而前者的握手次數不再是0)。除去這對夫妻外,有乙個人(1)只與(2n-2)握過手,有乙個人(2n-3)和除了(0)以外的其它夫婦都握了手。這兩個人肯定是一對夫妻,否則後者將和前者握手(從而前者的握手次數不再是1)。以此類推,直到握過n-2次手的人和握過n次手的人配成一對。此時,除了男主人及其配偶以外,其餘所有人都已經配對。根據排除法,最後剩下來的那個握手次數為n-1的人就是女主人了。

有趣的面試智力題

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

一些智力題

海盜分寶石 這是一道很有趣的推理題。在美國,據說20分鐘內能回答出這道題的人,平均年薪在8萬美金以上。這是一道很有趣的推理題。5個海盜搶到了100顆寶石,每一顆都一樣的大小和價值連城。他們決定這麼分 1。抽籤決定自己的號碼 1,2,3,4,5 2。首先,由1號提出分配方案,然後大家5人進行表決,當且...

一些智力題

1 你要在乙個nxm的格仔圖上塗色,你每次可以選擇乙個未塗色的格仔塗上你開始選定的那種顏色。同時為了美觀,我們要求你塗色的格仔不能相鄰,也就是說,不能有公共邊,現在問你,在採取最優策略的情況下,你最多能塗多少個格仔?給定格仔圖的長n和寬m。請返回最多能塗的格仔數目。思路 按照對角線塗色,可知格仔的一...