考拉茲猜想現在設定初始值為偶數時,對其進行乘以3後加1,後續操作不變。如對自然數n迴圈執行如下操作。
•n是偶數時,用n除以2
•n是奇數時,用n乘以3後加1
如此迴圈操作的話,無論初始值是什麼數字,最終都會得到1(會進入1 → 4 → 2 → 1這個迴圈)。
4 → 13 → 40 → 20 → 10 → 5 → 16 → 8 → 4
10000以內的偶數中,這樣能在到達1之前回到初始值的數有多少個?
建立乙個死迴圈,對n不斷的計算,直到n==1為止
php
// 檢查偶數是否合要求
function checknum($n)
}return false;
}$num = 0;
for ($i = 2; $i < 10000; $i+=2)
}echo $num;
輸出:
34
golang
package main
import "fmt"
func main()
}fmt.println(m)
}func checknum(n int) bool else
if val == n
}return false
}
輸出:
34
每週一道演算法題005 切木棒
假設要把長度為n厘公尺的木棒切分為1厘公尺長的小段,但是1根木棒只能由1人切分,當木棒被切分為3段後,可以同時由3個人分別切分木棒。求最多有m個人時,最少要切分幾次。譬如n 8,m 3時如下圖所示,切分4次就可以了。求當n 20,m 3時的最少切分次數。求當n 100,m 5時的最少切分次數。這道題...
每週一道LeetCode演算法題 兩數之和
class solution return result 分析class solution for int i 0 i nums.length i throw newillegalargumentexception no two sum solution class solution map.put...
程式設計訓練 每週一道程式設計題(九)
題目 給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 2 31,2 31 1 請根據這個假設,如果反轉後整數溢位那麼就返回 0。例子 輸入 123 輸出 321輸入 123 輸出 321思路 分兩種情況討...