梅氏砝碼問題

2021-09-10 05:05:46 字數 798 閱讀 4971

題目描述

**座熱愛做物理實驗,為了實驗,**座必須要精確的知道物品的質量。**座準備自己設計一套砝碼,每乙個砝碼都是正整數,這套砝碼必須能夠精確測量出n以內所有正整數的質量,**座想要知道至少需要多少個砝碼。你可以在天平的任意一邊放置砝碼。

輸入描述:

一行,乙個正整數n

1<=n<=101000

輸出描述:

乙個整數,表示最少的砝碼數

思路:本題是梅氏砝碼問題,首先1克的砝碼必用,此時可以測得的質量為1克,top為1。接下來設下乙個砝碼為x克,由於砝碼可以選擇不放、放左、放右,故此時可測得的質量為x-1,x,x+1,由於是要求連續精確測質量,故x-1=1+1,即x=3,此時可測得的質量為1,2,3,4,top為4;放下乙個砝碼時,上面的1,2,3,4都可以使用,即新增了x-4,x-3,x-2,x-1,x,x+1,x+2,x+3,x+4,於是x-4=4+1,即x=9,此時可測得的質量為1,2,3,4,5,6,7,8,9,10,11,12,13,top為14;以此類推,每次都新增了2倍的上一次最大值再加1,即top=3*top+1;且砝碼的質量x為1、3、9、27...(3的n-1次方)。

**:

#include#includeusing namespace std;

int main()

cout<<(int)ans

}

梅氏砝碼問題

很有意思的乙個智力題。題目 乙個農夫借給他的的鄰居機械工40磅的重物。遺憾的是,機械工不小心把重物摔成了四份。不過值得高興的是,機械工說,使用這四分可以在天平上稱出0 40磅的任何重物。問每份的重物是多少?這個在數學上叫做梅氏砝碼問題,其敘述如下 若有n個砝碼,重量分別為m1,m2,mn,且能稱出從...

梅氏砝碼(2014騰訊實習筆試附加題)

原題大意 用4個砝碼稱出重量在1到40克內的鑽石,這4個砝碼分別多重 鑽石重量為整型 解法 梅氏砝碼。假設第i個砝碼的重量為a i 且a i a i 1 i 1個砝碼可以表示 1,n n a 1 a 2 a 3 a i 1 那麼新增砝碼i後,可以表示的範圍為 1,n u a i n,a i n 為使...

德梅齊里亞克砝碼問題

德梅齊里亞克砝碼問題 一位商人有乙個40磅重的砝碼,由於跌落在地而碎成4塊,稱得每塊碎片的重量都是整磅數,而且可以用這4塊來稱出從1到40磅之間的任意整數磅的重物,請問這4塊碎片分別為多重?我首先給出問題的答案,可能聰明的人看到答案的形式就能猜到其中的規律 1,1 2 1 3,1 3 2 1 9,1...