friday, july 22, 2016 19:50:50
a、b兩人分別在兩座島上。b生病了,a有b所需要的藥。c有一艘小船和乙個可以上鎖的箱子。c願意在a和b之間運東西,但東西只能放在箱子裡。只要箱子沒被上鎖,c都會偷走箱子裡的東西,不管箱子裡有什麼。如果a和b各自有一把鎖和只能開自己那把鎖的鑰匙,a應該如何把東西安全遞交給b?
答案:a
把藥放進箱子,用自己的鎖把箱子鎖上。
b拿到箱子後,再在箱子上加一把自己的鎖。箱子運回a後,
a取下自己的鎖。箱子再運到
b手中時,
b取下自己的鎖,獲得藥物。
演算法總結:同資料庫中的兩段鎖協議,上鎖階段,解鎖階段
這也給資訊傳輸啟迪作用
有乙個軟體公司,1/2的人是系統分析員,2/5的人是軟體工程師,有1/4的人兩者都是,問有多少人兩者都不是?
答案:看圖
演算法總結:畫圖最直接
有25匹馬,速度都不同,但每匹馬的速度都是定值。現在只有5條賽道,無法計時,即每賽一場最多只能知道5匹馬的相對快慢。問最少賽幾場可以找出25匹馬中速度最快的前3名?
答案:
25
匹馬分成
5組,這5
場比賽是免不了的
每一組的冠軍在一起賽一場就行了(第
6場)找到第一名
假設第六場比賽的1,
2,3分別來自
a,b,c
組中的冠軍,則
全場的,第一名為
a組第一,第二名,第三名要在,a組第
2,3,
b組第1,
2,c組第
3名中賽出來
所以一共要賽
7場最少找到1,
2,3名
考慮乙個雙人遊戲。遊戲在乙個圓桌上進行。每個遊戲者都有足夠多的硬幣。他們需要在桌子上輪流放置硬幣,每次必需且只能放置一枚硬幣,要求硬幣完全置於桌面內(不能有一部分懸在桌子外面),並且不能與原來放過的硬幣重疊。誰沒有地方放置新的硬幣,誰就輸了。遊戲的先行者還是後行者有必勝策略?這種策略是什麼?
答案:先行者在桌子中心放置一枚硬幣,以後的硬幣總是放在與後行者剛才放的地方相對稱的位置。這樣,只要後行者能放,先行者一定也有地方放。先行者必勝。
乙個矩形蛋糕,蛋糕內部有一塊矩形的空洞。只用一刀,如何將蛋糕切成大小相等的兩塊?
答案:注意到平分矩形面積的線都經過矩形的中心。過大矩形和空心矩形各自的中心畫一條線,這條線顯然把兩個矩形都分成了一半,它們的差當然也是相等的。
演算法題 有趣的數字
小q今天在上廁所時想到了這個問題 有n個數,兩兩組成二元組,差最小的有多少對呢?差最大呢?輸入描述 輸入包含多組測試資料。對於每組測試資料 n 本組測試資料有n個數 a1,a2 an 需要計算的資料 保證 1 n 100000,0 ai int max.輸出描述 對於每組資料,輸出兩個數,第乙個數表...
演算法題 有趣的排序
度度熊有乙個n個數的陣列,他想將陣列從小到大 排好序,但是萌萌的度度熊只會下面這個操作 任取陣列中的乙個數然後將它放置在陣列的最後乙個位置。問最少操作多少次可以使得陣列從小到大有序?輸入描述 首先輸入乙個正整數n,接下來的一行輸入n個整數。n 50,每個數的絕對值小於等於1000 輸出描述 輸出乙個...
有趣的演算法 撈魚問題
勇幸 thinking 話說這道題還是三年前徑點公司來學院筆試中的一道題目,當時剛進入實驗室,師兄在帶著我們做新生培訓的時候做過這道題,最近回顧dp的一些基礎,翻找以前寫的程式,發現了這道題,就貼一下,給出兩種方法的 並對比了它們在不同規模問題下的效率。題目 20個桶,每個桶中有10條魚,用網從每個...