Murmur of a rookie software engineer came from Taiwan.
(Sorry for my poor English, I just practice it here.)
Please feel free to contact me for anything: ninna.tw@gmail.com
2005年1月17日 星期一
假鈔問題
Question:
有個商品賣30元,成本25元,客人用100元紙鈔跟商人買了商品,商人沒錢找所以拿了這張紙鈔去跟隔壁攤販換零錢找給客人,後來隔壁攤販跑來說那是假鈔,所以商人又賠了100元給隔壁攤販,試問商人總共虧多少錢?
Answer:
可以把買賣與鈔票交換分開來看
商人給了客人25元的商品,然後拿70元給客人,損失95元。
商人從客人收了100元的假鈔,去換成100元真鈔,然後又把真鈔歸還,損失0元。
因此總共損失 95元。
換個方式思考
商人原本有25元,買了25的東西來賣給客人,商人剩下 0元
商人拿了 100元的假鈔,然後去跟隔壁攤販拿了100元,商人身上剩下100元
商人找了70元給客人,商人身上剩下30元
商人把還了100元給隔壁攤泛,商人身上剩下 -70元
因此,原本有25元減去剩下-70元,商人共損失95元
reference: realtek
喊數字遊戲
Question:
如果兩個人比賽,從1數到100,喊到100的人獲勝,每一次最少喊一個數,最多喊七個數,先攻的人喊到幾時便保證必勝?
Answer:
如果自己要喊100,對方必須只能喊99~93,
自己要喊 92,對方必須只能喊91~85,
...........................
自己要喊 12,對方必須只能喊11~ 5,
自己要喊 4
因此只要先喊到4,則先喊的人必獲勝
往後原則就是喊 [8-對方喊幾次]
例如 A喊4
B喊1次到5
A喊(8-1=7次)到12
直到A喊到92時,B不管怎樣都不會贏
reference: realtek
九顆球秤重
Question:
有九顆看起來一模一樣的球 ,但是有一顆不一樣重,也不知道它是比較輕還比較重,用一個天秤最少要量幾次可以"確保"找出這顆球?
Answer:
3次。
第一次
拿六顆球放在天秤上,假設有一邊比較重,那麼就能知道,不一樣重的球是這六顆其中之一
|O_O_O (假設右邊有一顆比較輕的球) [也可能左邊是重球1個]
O_O_O| (下一輪把右邊三顆換成最後三顆)
第二次
換掉輕的三顆,拿另外三顆上來量,如果天秤平衡了,就能知道不一樣重的球是剛剛被換掉的三顆其中之一
O_O_O|O_O_O (確認假設正確,第一次的右邊果然有輕球)
[因為如果左邊有重球那第二次比還是要左邊天秤較重]
第三次
拿另外三顆的其中兩顆來量,如果平衡了,那麼第三顆就是輕的球
O|O (都知道有輕球了,平衡就是第三個是輕的)
衍生問題,如果已知不一樣重的球是比較輕的,那就只需要兩次了。
reference: realtek
Great Articles
猴子靈藥 - MSVC與CRT的恩怨情仇
http://blog.monkeypotion.net/gameprog/beginner/love-and-hate-between-msvc-and-crt
官方 - C 標準函式庫
http://www.utas.edu.au/infosys/info/documentation/C/CStdLib.html
官方 - GNU C Library Source Code
http://www.gnu.org/software/libc/
extern "C"的涵意
http://aftcast.pixnet.net/blog/post/22457055
C++ pthread 教學
http://codebase.eu/tutorial/posix-threads-c/
http://www.tutorialspoint.com/cplusplus/cpp_multithreading.htm
C++ WIN32 API thread 教學
http://wuminfajoy.blogspot.tw/2010/10/c.html
訂閱:
文章 (Atom)