Basic Member
|
我的想法是 只要稱一次重量... 但 可能要推演一下算法就是
首先 看一下題目
現在有10個袋子。每個袋子裡都有100個的餅。
每個袋子的餅都是一樣重。但是有一個袋子的餅比其他的輕。
給你一個稱。你要稱幾次才能找到哪個袋子的餅是比其他的輕
餅的數量足足有1000個(100*10) 再來 只有一袋餅的重量不一樣 還有每袋裡面每個餅都一樣重
我的做法就是 把10袋餅一字排開 從第一個袋子拿1個 第二個袋子拿2個 第三個袋子拿3個... 以此類推 所以總數會拿取55個餅 拿出來稱重 會得到一個總重量 z
接下來要用聯立方程式... 天啊 我全還給老師了 但我想一定有人會用 以下就是條件
第n袋就是較輕的那袋餅(取出y個y可能為1到10任意數字) 接下來較燒腦的是 要找出較輕第n袋y餅 就必須先推算出正常餅(x)的重量
取出總重z<55x,z =第n袋y餅加其它正常x餅數量
用正常的55x餅減去整這個重量 就是餅的重量差 這個重量差必定介於1~10的倍數
再反推回去(可能變復雜了 小時候念書太不認真了QQ)
說白話點 就是假設正常餅10g 輕的餅9g 如果在第6袋拿出來的 就會有6g的落差(550 跟544) 第三袋拿出就是會有3克落差 (550 跟547)
應該還要再一個未知數就是正常餅跟較輕的餅的重量差 只是我想不出用在那比較適合
當然這都是很粗操的算法了 畢儘這一定有公式 只是我全忘了 剩下的 就交給其它網友幫忙補足了 先下台一掬恭 腦汁快乾了
|