本帖最后由 天馬行空 于 2015-8-17 20:45 編輯
第三題..
首先吐槽下引用 常識告訴我們依次從第一框第二框取1,2……個,最后看差值,就可以計算出來了。 事實上常識告訴我的應該是0,1,2,...個.
然后回到原題..
嗯,必須先澄清一點,多次操作的話,是必須事先決定每一次操作,還是后邊的操作步驟可以取決于前邊的操作步驟得到的結果?好像并沒有明說,那我就猜是后者吧..正常問的都是后者的意思吧..
然后再回到原題....引用 如果有10筐,每筐100個呢,最少需要稱幾次就一定能找出0.99斤的蘋果? 沒不同.還是一次.引用 如果有a筐,每筐b個呢,最少需要稱幾次就一定能找出0.99斤的蘋果? 這次不同在哪里呢..顯然是上述方法并不能用,因為不能從某框取出"11個"之類的.
那么,切一切,"半個"之類的可以嗎?可以的話就沒啥好玩的了怎么改都是1次了所以我猜lz肯定不接受..
所以,每次取都只能取自然數個.
等等,稱的操作具體是什么?"從所有框中分別取出自然數個稱其總重量"?有比這更強大的功能嗎?我反正想不到,所以就當是這樣吧..(畢竟要是有別的更強大的操作,連"次數"這個概念可能都模糊了甚至都不存在了,所以我就假定lz也規定一次操作就是這樣吧..)
那么這樣的操作能得到什么信息呢?顯然從總重量可以得到重的和輕了的各有幾個,于是取的個數和輕了的個數一樣的筐就是嫌疑筐,不一樣的就是無辜筐;反之,這顯然也是等價的,嫌疑筐每一個是犯筐都滿足條件和稱量結果,同時無辜筐是犯筐也會與結果不符合.
所以,每次操作的所有選擇,為選擇每筐取的個數,且只能在{0,1,2,...,b}中選擇.
假如我給a個筐選的個數是t[0]個0,t[1]個1,t[2]個2,...,t[[/b]b]個b,那么顯然此次操作的結果就是我得到了一些無辜筐,而犯筐的個數可能是{t[0],t[1],...,t[[b]b]}中的任何一個(當然,正確的題設和結果不會讓我得到某個0).而結果是要確定其中唯一一個犯筐..
不多說了,二分推廣N分都得說的話就別看了..我也不證明N分的結論了..總之就是..
次數為ceil(log[b+1](a)).引用 如果有100筐,每筐10個呢,最少需要稱幾次就一定能找出0.99斤的蘋果? 由上述結論,次數為ceil(log[10+1](100))=ceil(1.920505135...)=2.
ps.怎么這結論寫著看起來這么眼熟..乃該不會前兩次就出過結論是N分的東西吧.. |