Feb 22, 2010

Crazy Guy On The Airplane

This question comes from here: techInterview

有 100 個人排隊等著登機,飛機正好 100 個座位,編號 1 至 100。假設隊伍第一位是座位一號,第二位是座位二號,依此類推。很糟糕的是,第一位乘客,也就是座位一號的乘客,隨便找座位坐,可能坐在自己位置上,或去佔坐別人的位置,以致於後面乘客的座位可能會被別人佔去。假如座位被別人佔去,乘面也隨機地找一個座位坐;否則就坐在自己的座位上。

問題:請問最後一位乘客,也就是座位100號的乘客,有多少的機率會坐在自己的位置上?

提示:可以先試只有三位乘客、四位乘客的問題。窮舉法可能有助於思考。但如果計算所有可能性中有幾個是最後一位在自己座位上的數量,這是不正確的解法(雖然可能是相同的答案)。網頁中給的答案,是錯誤的解法!

Fixing My Mighty Mouse

昨天晚上,多喝了幾杯,晚上難以入眠,就把早上有點失靈的 Might Mouse 拆解了!

當初 Might Mouse 上市時,是一隻酷炫的老鼠,純白色的身體,圓弧的造形,平滑無痕的肌膚,一顆微凸渾圓飽滿的360度滾輪,讓人眼睛一亮,為之心動不已。不過,在掌聲之下,最令人垢病的問題,是那顆渾圓的360度滾輪,在滾動玩弄時,難免會把塵垢帶進體內,日積月累,萬能老鼠也是會生病的。

按照官方說法,用無棉絮軟布來回擦拭滾輪,或是把它翻面,滾輪朝下的狀態下,大力點擦拭。也有影片可以參考。大部分網路上提供的方法,也是以此為依據。

大部分的時候,依此法都可以排除滾輪不靈的問題。有時塵垢太過頑張,就多用點力,多擦拭幾下,或多滴一兩滴水,也都可以解決。但也許是最近使用過於頻繁(或自己都不洗手),竟然怎麼擦拭,就是無法恢復以前靈巧的滾動。於是我就更加用力的擦拭,更加的粗暴,更加的... 結果,它就生氣了!滾輪正常了,但怎麼按它,無論是左鍵或右鍵,它都只回應我中指中鍵的功能。滾輪不正常,至少還可以用;但現在只剩下中指中鍵,怎麼都無法做任何事了!

難道要趁機換隻 Magic Mouse 嗎?很誘人沒錯,但錢包會抗議。但沒有滑鼠,能工作嗎?Facebook 都不能用啦~看樣子,觸診找不出病因,我就得要更加粗暴,給它個外科手術,看病因是那裡。反正,只剩中指中鍵也跟死掉沒兩樣了~

拆解 Might Mouse 並不難,網路上圖解影片到處都有,三兩下就開腸剖肚了。結果發現,問題還都是在那顆渾圓飽滿的360度滾輪身上。可以看到,滾輪四周有感應上下左右四個方面的輪軸(Might Mouse 是用電磁感應的方式,跟一般滾輪用光學柵欄或機械式完全不同),而在這顆小球球的下方,有小小的金屬墊片(箭頭所示),這樣就明白病因在那裡了。(所附圖片為網路上有線Might Mouse的構造,與無線的不盡相同,但原理一致)

這片金屬墊片平常是不接觸到底部的線路,當你按下這小球球,金屬墊片碰到底部的線路,就會送出是中鍵的指令;而放開後,金屬墊片會因彈力回復原來的位置,而不再與底部的線路接通。但是當你為了清除塵垢而大力的擦拭360度滾輪時,有可以施力過大,或過久,導致金屬墊片變形,而無法回到原位,造成與底部的線路永遠成接通狀態。這時候,萬能老鼠就會給你無止盡的中指中鍵,以抗議你過去粗暴的對待。

好啦~一切回復正常,也可以認真工作(謎之音:上 Facebook 嗎?)不過很意外的發現,萬能老鼠體內有聲帶喇叭的。原來按下側鍵所發出的 click 聲,不是機械產生的,而且由體內的小喇叭發出來的喔!不知道可不可以讓它發出其它聲音,喵~

Feb 18, 2010

How to Average?

Suppose 3 colleagues want to average their salaries. Each of them only knows his salary and have no idea about others. However, everyone does not want other people know his salary. If there is a calculator, how could they average their salaries without revealing their salaries?

有三個同事,想算出他們的平均薪水。每個人只知道自己的薪水,但同時又不希望別人知道自己的薪水。如何利用一台計算機,在不洩露自己薪水的情況下,算出三人的平均薪水?

Hint: The calculator is not necessary. They need to pass the information to others.

提示:不一定需要計算機,只要他們能把訊息傳給其它人。