時間限制: 1 s
空間限制: 32000 kb
題目等級 : ** gold
題解檢視執行結果
所謂角谷猜想,即給定乙個正整數 n,對 n 反覆進行下列兩種變換:
1)如果n是偶數,就除以2;
2)如果n是奇數,就乘以3加1。
最後的結果總是1。
我們把從 n 變換到 1 所需要進行的變換次數稱做 n 的變換長度,如數字 7 的變換為:
7-22-11-34-17-52-26-13-40-20-10-5-16-8-4-2-1
共進行了 16 次變換,因而 7 的變換長度為 16。
wish 現在對乙個給定區間內的最長變換長度比較感興趣,但是手算起來計算量太大,於是他又找到了參加資訊學競賽的你,你可以幫助他嗎?
輸入描述 input description
每個測試點包含多組資料,第一行乙個數 t,表示資料個數。
第二行至第 t+1 行,每行兩個數 a、b,表示求 a 和 b 之間數(包含 a、b)的最長變換長度。
輸出描述 output description
輸出格式
t 行,每行輸出對應輸入資料的各個區間的最長變換長度。
樣例輸入 sample input
21 7
9 20
樣例輸出 sample output
1620
資料範圍及提示 data size & hint
資料範圍
1 <= t <= 100
1 <= a, b <= 10^8
區間長度不超過 10^5
記憶化、注意邊界
沒寫returnwa半天zz啊
1 #include 2 #include 34using
namespace
std;56
#define ll long long
7#define max(a,b) (a>b?a:b)
8#define min(a,b) (a9 inline void read(ll &x)
1015 ll a,b,sum[1000000
];16
17ll dfs(ll now)
1825
else
return now&1 ? dfs(now*3+1)+1 :dfs(now>>1)+1;26
}2728int
presist()
2938
return0;
39}4041
int aptal=presist();
42int main()
2969 角谷猜想
2969角谷猜想 時間限制 1 s 空間限制 32000 kb 題目等級 gold 題解檢視執行結果 題目描述description 所謂角谷猜想,即給定乙個正整數 n,對 n 反覆進行下列兩種變換 1 如果n是偶數,就除以2 2 如果n是奇數,就乘以3加1。最後的結果總是1。我們把從 n 變換到 ...
codevs2969角谷猜想(記憶化搜尋 分塊)
所謂角谷猜想,即給定乙個正整數 n,對 n 反覆進行下列兩種變換 1 如果n是偶數,就除以2 2 如果n是奇數,就乘以3加1。最後的結果總是1。我們把從 n 變換到 1 所需要進行的變換次數稱做 n 的變換長度,如數字 7 的變換為 7 22 11 34 17 52 26 13 40 20 10 5...
驗證角谷猜想
total submission s 7305 accepted submission s 3767 problem description 數論中有許多猜想尚未解決,其中有乙個被稱為 角谷猜想 的問題,該問題在 五 六十年代的美國多個著名高校中曾風行一時,這個問題是這樣描述的 任何乙個大於一的自然...