日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数学 —— 巧用进制

發布時間:2024/5/6 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数学 —— 巧用进制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

例題 天平稱重:變種三進制

用天平稱重時,我們希望用盡可能少的砝碼組合稱出盡可能多的重量。

如果有無限個砝碼,重量分別是1,3,9,27,81,……等3的指數冪,
神奇之處在于用它們可以稱出任意整數重量(砝碼允許放在左右兩個盤中)。

本題目要求編程實現:對用戶給定的重量,給出砝碼組合方案。
用戶輸入:

5

程序輸出:

9-3-1

用戶輸入:

19

程序輸出:

27-9+1

要求程序輸出的組合總是大數在前小數在后。

可以假設用戶的輸入的數字符合范圍1~121。

思路

1, 3, 9, 27, 81,……
30,31,32,33,34,……
聯想到用3進制解決問題。

假設是二進制:
1,2,4,8,……
假設要稱重量為10的物品,10轉換為二進制是1010,代表取2和8兩個砝碼就能稱出10,11轉換為二進制是1011,代表取1、2和8三個砝碼就能稱出11,……

如果把5轉換為3進制為12,1代表要取一個重量為3的砝碼,2代表要取兩個重量為1的砝碼,但是題目中并沒有說可以用多個砝碼。

如果把5轉換為變種3進制可以表示為(2,-1)3=(1,-1,-1)3,這樣就能夠表示為題目中給出的9-3-1。

二進制代表了兩種狀態,取或不取,但是三進制代表了三種狀態,放在左盤、不取、放在右盤。

對于要稱重的數,先轉換為3進制 ,然后翻轉(放置越界),之后轉成字符數組,掃描;如果遇到2就將其自己變成-1,下一位+1;如果遇到22的情況就將2變成-1,下一位變成0,后面一位+1;最后,恢復成10進制。

總結

以上是生活随笔為你收集整理的数学 —— 巧用进制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。