python證明冰雹猜想 關於冰雹猜想的證明

2021-10-11 12:20:30 字數 970 閱讀 4253

冰雹猜想是指:乙個正整數x,如果是奇數就乘以3再加1,如果是偶數就析出偶數因數2ⁿ,這樣經過若干個次數,最終回到1。

以n=9為例進行說明:

9×3+1=28,28÷2=14,14÷2=7,7×3+1=22,22÷2=11,11×3+1=34,34÷2=17,17×3+1=52,52÷2=26,26÷2=13,13×3+1=40,40÷2=20,20÷2=10,10÷2=5,5×3+1=16,16÷2=8,8÷2=4,4÷2=2,2÷2=1。

我對這個問題的證明如下:

對於任意的正整數有如下特徵:

在二進位制範疇內,正整數可表示為1、0構成的序列,該序列的特徵為尾數是0或者1,首數是1,次首數(第二個數)為0或者1。

根據概率有尾數為0的概率為0.5(偶數),為1的概率為0.5(奇數)。

根據二進位制乘法和除法的基本原理有:任意偶數除以2,表現為表示該數的二進位制序列右移1位,

任意奇數乘以3,表現為表示該數的二進位制序列和該序列左移一位相加

所以有:當該數為偶數,則該數對應的二進位制序列長度n減少一位即長度為n-1,即在此種情況下該數對應的二進位制序列長度減少的概率為100%

當該數為奇數:

次首數為0的概率是0.5,為1的概率是0.5。當次首數為0時,該數乘以3再加1,因為次首數和第三位數相加進製的概率為0.5(此時序列長度變為n+2),不進製的概率為0.5(此時序列長度為n+1),所以該數序列長度n變為n+2的概率為0.5 ,變為n+1的概率為0.5,又因為該數乘以3再加1,尾數必然為0,接下來必然發生右移。所以序列長度保持為n的概率為0.5,序列長度變為n+1的概率為0.5

所以有:對於任意正整數,進行冰雹運算。二進位制序列長度變為n-1的概率為0.5*1=0.5,長度不變保持n的概率為0.5*0.5=0.25,長度增加為n+1的概率為0.5*0.5.=0.25.根據概率,長度必然不斷減少。又因為結果不可能為負數,所以必然最小值為1.

當該數為1時,進入無限迴圈1-2-4.無法跳出

以上是我對該問題的證明。

洛谷 P5727 冰雹猜想

給出乙個正整數 n n 100 然後對這個數字一直進行下面的操作 如果這個數字是奇數,那麼將其乘 3 再加 1,否則除以 2。經過若干次迴圈後,最終都會回到 1。經過驗證很大的數字 7 1011 都可以按照這樣的方式比變成 1,所以被稱為 冰雹猜想 例如當 n 是 20,變化的過程是 20,10,5...

用python證明角谷猜想 關於角谷猜想的證明

角谷猜想 對於乙個正整數,若是奇數 乘3加1,若是偶數 除以2 重複上述過程,最終結果是1。證明 對任意的正整數n 若n是偶數則總有 n m 2 k m是奇數 則只需證對於奇數m 猜想成立 又對於任意奇數m 可將其改寫為二進位制數 對於二進位制數 若被2整除 則末位為0 且整除後僅消去末位 即m x...

洛谷 P5727 深基5 例3 冰雹猜想

題目描述 給出乙個正整數 n n 100 然後對這個數字一直進行下面的操作 如果這個數字是奇數,那麼將其乘 3 再加 1,否則除以 2。經過若干次迴圈後,最終都會回到 1。經過驗證很大的數字 7 10 11 都可以按照這樣的方式比變成 1,所以被稱為 冰雹猜想 例如當 n 是 20,變化的過程是 2...