999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

德·梅齊里亞克砝碼問題的分析與PVthon解法

2021-07-29 06:32:00王德貴
電腦報 2021年27期

王德貴

在數學史上,有很多未被證明的猜想和定理,它們也成了著名的數學難題,而其中關于數論的問題有很多,今天我們用Python來求解德·梅齊里亞克的砝碼問題。以后還將不定期地發布類似問題,歡迎關注。

一、德·梅齊里亞克的砝碼問題

一位商人有一個40磅的砝碼,由于跌落在地而碎成4塊。后來,稱得每塊碎片的重量都是整磅數,而且可以用這4塊來稱從1至40磅之間的任意整數磅的重物。問這4塊砝碼碎片各重多少?

二、算法分析

解這個問題挺有意思的,不需要什么高深的數學知識又很好玩。首先我們來參照一下人民幣的幣值。我們的分幣有1、2、5三種幣值,兩兩可以組成1到8之間的若干值,同樣,我們在這道砝碼問題中第一個要考慮的因素就是排列組合值。1,2,1+2,5,1+5,2+5,1+2+5。

此外,天平稱重的另一個特性就是,砝碼可以放在左右任意一個托盤中,所以我們就得到了這個問題的第二個特質:排列組合得出的結果可以取加法,還可以取減法。這樣,在上面列出的數字的基礎上,我們又得到了2-1,5-1,5-2,5-1-2(就像買東西找零錢一樣)。我們發現這些新的值和上面的值有重合,也就是有冗余值,我們的優化過程就是要消除這些冗余值。現在我們得到了兩個數學概念:排列組合和加減法。

根據題意,分析時優先考慮極限情況,砝碼的磅數最小的3個數是1、1、1,那剩下的砝碼磅數就是37。因而砝碼重量范圍在Python中用(1。38)表示。但是各種組合形式不明確,對于計算機來說采用枚舉算法比較簡單。

1.由于天平可以兩邊放置砝碼,因而砝碼就有3種情況,放在左邊、不放、放在右邊。4個砝碼位置的參數用ab,c,d表示,每個值都設定為一1,0,1。一1為左邊表示減去值,在Python中用(一1。2)表示。

2.設定p,q,r為三個砝碼磅數,那么第四個砝碼就是(40-p-q-r),假定p不小于q,q不小于r,r不小于40-p-q-r。這樣可以有效分割總數40磅,縮小計算范圍,也避免重復數據。

3.用循環來判斷1到40磅用什么樣的組合表示。不同組合方式用x==a。p+b*q+c‘r+d‘(40-p-q-r)表示,并且x是從1到40。

4.最后利用集合去重,如果滿足x的值正好是1-40的40個整數值,那就可以得到所求的磅值了。

三、程序實現

根據前面的分析,寫出Python程序。代碼如圖:

1.p、q、r三重for循環,先確定在1-37整數范圍,并且滿足條件p<=q<=r。

定義空集合XX。xx=set()。

2然后是四個砝碼的三種狀態組合的4重循環,如果滿足r<40-p-q-r,那么在1-40的循環中,將滿足x==a*p+b*q+c*r+d*(40-p-q-r)的x值添加到集合xx中,如果XX的長度是40,那就說明1-40的所有值均能組合出來,即輸出這4個值。

3.時間復雜度

循環值雖然不大,但是8重循環,時間復雜度為37×37×37×40×3×3×3×3=164115720。大約10的8次方。這個運算次數在Python運行時間只需要0.5秒。運行結果如下圖。

四、結論

要能夠滿足題意的條件.那么小砝碼磅數之和所表示數的下一個數應當為最大數減去小砝碼磅數之和。因為幾個小磅數囊括了其小磅數和內所有數字才能滿足這個砝碼問題,下一個磅數,小磅數和已經不能滿足,大數也滿足不了,那么就只能用大數減去小磅數和得到,即下一個磅數是y=2*x+l,x為小磅數之和。

法國數學家G_B.德·梅齊里亞克(1581~1638年)在他的著作中解答了這題(因此也稱這個問題是德·梅齊里亞克的砝碼問題)。為了使兩個砝碼A與B能稱出最多種重量,必須是1磅和3磅,因為用它們能稱出1、2(=3-1)、3(=2*1+1)、4(=3+1)磅的重物。如選第三塊砝碼c,則它的重量為2x(1+3)+1=9磅,則用它們可稱出1至9+4=13磅間的所有整數磅重物。最后選第四塊砝碼D,使它重量為2x13+1=27磅,那么用這四塊砝碼能稱出從1至27+13=40磅的重物。因此,這四塊砝碼的重量分別為1、3、9、27磅,根據這個理論之后的數字則是81。243。

五、小結

學習編程不能只要讓學生做出多么好的程序,而是讓學生在學習中,嘗試解決一些問題,掌握分析問題、解決問題的方法,提高解決問題的能力,并且知道獨立思考問題和團結協作的重要作用。

主站蜘蛛池模板: 日韩大乳视频中文字幕| 午夜成人在线视频| 国产精品偷伦在线观看| 18禁黄无遮挡免费动漫网站| 国产中文在线亚洲精品官网| 国产一区二区三区夜色| 一级看片免费视频| 婷婷色在线视频| 天堂岛国av无码免费无禁网站| 激情综合婷婷丁香五月尤物| 久久精品无码一区二区国产区| 专干老肥熟女视频网站| 国产欧美又粗又猛又爽老| 青青草国产免费国产| 热热久久狠狠偷偷色男同| 亚洲综合网在线观看| 国产一级毛片高清完整视频版| 国产综合无码一区二区色蜜蜜| 谁有在线观看日韩亚洲最新视频| 国产综合无码一区二区色蜜蜜| 无码专区在线观看| 国产毛片网站| 在线观看亚洲人成网站| 国产精品.com| 九色最新网址| 久久久久久久久亚洲精品| 沈阳少妇高潮在线| 亚洲第一视频免费在线| 国产成人午夜福利免费无码r| 精品国产91爱| 久久一日本道色综合久久| 韩国福利一区| 免费又黄又爽又猛大片午夜| 国产免费高清无需播放器| 国产第八页| 免费全部高H视频无码无遮掩| 久久久久久午夜精品| 欧美中文一区| 国产嫩草在线观看| 亚洲综合中文字幕国产精品欧美| 人妻精品久久无码区| 欧美一区二区福利视频| 日韩小视频在线播放| 一区二区三区国产精品视频| 国产成人乱码一区二区三区在线| 亚洲欧美在线精品一区二区| 一区二区三区高清视频国产女人| 精品国产成人高清在线| 亚洲欧美日韩另类| 国产成人你懂的在线观看| 国产自视频| 亚洲欧美另类中文字幕| 91人妻日韩人妻无码专区精品| 一级毛片在线免费视频| 国产一级毛片网站| 亚洲高清无在码在线无弹窗| 欧美另类精品一区二区三区| 国内精品视频| 欧美色亚洲| 精品国产免费观看一区| 国产成人综合亚洲网址| 日韩欧美中文| 亚洲免费人成影院| 成人亚洲天堂| 秘书高跟黑色丝袜国产91在线| 亚洲人成网站色7799在线播放| 凹凸精品免费精品视频| 中文天堂在线视频| 最新日本中文字幕| 在线看免费无码av天堂的| 色香蕉影院| 亚洲视频免费播放| 欧美另类图片视频无弹跳第一页| 国产精品天干天干在线观看| 日韩精品毛片| 人妻丝袜无码视频| 激情无码视频在线看| 91亚洲影院| 亚洲精品视频在线观看视频| 免费看美女毛片| 欧美日韩中文字幕在线| 国产成人欧美|