藍橋杯真題 冰雹數

2021-09-11 11:23:58 字數 941 閱讀 5381

任意給定乙個正整數n,

如果是偶數,執行: n / 2

如果是奇數,執行: n * 3 + 1

生成的新的數字再執行同樣的動作,迴圈往復。

通過觀察發現,這個數字會一會兒上公升到很高,一會兒又降落下來。就這樣起起落落的,但最終必會落到「1」這有點像小冰雹粒子在冰雹雲中翻滾增長的樣子。

比如n=9

9,28,14,7,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1

可以看到,n=9的時候,這個「小冰雹」最高衝到了52這個高度。

輸入格式:

乙個正整數n(n<1000000)

輸出格式:

乙個正整數,表示不大於n的數字,經過冰雹數變換過程中,最高衝到了多少。

例如,輸入:

9程式應該輸出:

52再例如,輸入:

1000

程式應該輸出:

9232

資源約定:

峰值記憶體消耗 < 256m

cpu消耗 < 1000ms

請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入…」 的多餘內容。

所有**放在同乙個原始檔中,除錯通過後,拷貝提交該原始碼。

注意: main函式需要返回0

注意: 只使用ansi c/ansi c++ 標準,不要呼叫依賴於編譯環境或作業系統的特殊函式。

注意: 所有依賴的函式必須明確地在原始檔中 #include , 不能通過工程設定而省略常用標頭檔案。

#include

int max=0;

int r

(int n)

else

if(n%2==

0)r(n);}

else

if(n%2==

1)r(n);}

}int main()

藍橋杯 冰雹數

冰雹數 任意給定乙個正整數n,如果是偶數,執行 n 2 如果是奇數,執行 n 3 1 生成的新的數字再執行同樣的動作,迴圈往復。通過觀察發現,這個數字會一會兒上公升到很高,一會兒又降落下來。就這樣起起落落的,但最終必會落到 1 這有點像小冰雹粒子在冰雹雲中翻滾增長的樣子。比如n 9 9,28,14,...

藍橋杯 2016初賽 冰雹數

任意給定乙個正整數n,如果是偶數,執行 n 2 如果是奇數,執行 n 3 1 生成的新的數字再執行同樣的動作,迴圈往復。通過觀察發現,這個數字會一會兒上公升到很高,一會兒又降落下來。就這樣起起落落的,但最終必會落到 1 這有點像小冰雹粒子在冰雹雲中翻滾增長的樣子。比如n 9 9,28,14,7,22...

藍橋杯真題 方格填數

方格填數 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。思路 明顯是一道dfs題 答案 1580 include using namespace std...