PTA1001 害死人不償命的(3n+1)猜想
1001 害死人不償命的(3n+1)猜想 (15 分)
卡拉茲(Callatz)猜想:
對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉茲在 1950 年的世界數學家大會上公佈了這個猜想,傳說當時耶魯大學師生齊動員,拼命想證明這個貌似很傻很天真的命題,結果鬧得學生們無心學業,一心只證 (3n+1),以至於有人說這是一個陰謀,卡拉茲是在蓄意延緩美國數學界教學與科研的進展……
我們今天的題目不是證明卡拉茲猜想,而是對給定的任一不超過 1000 的正整數 n,簡單地數一下,需要多少步(砍幾下)才能得到 n=1?
輸入格式:
每個測試輸入包含 1 個測試用例,即給出正整數 n 的值。
輸出格式:
輸出從 n 計算到 1 需要的步數。
輸入樣例:
3
輸出樣例:
5
(本人)演算法實現如下:
#include<stdio.h>
int main(){
int n,time=0;
scanf("%d",&n);
while(n!=1){
if(n%2==0){
n/=2;
time++;
}else{
n=3*n+1;
n/=2;
time++;
}
}
printf("%d",time);
return 0;
}
思想:
本題思想很簡單,也沒什麼坑,對輸入的n進行判斷,若n為偶數,則直接除以2,若為奇數,則先乘3加1再除以2,即可通過
相關推薦
PTA1001 害死人不償命的(3n+1)猜想
1001 害死人不償命的(3n+1)猜想 (15 分) 卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉
PTA1001 害死人不償命的(3n+1)猜想 (15 分)
1001 害死人不償命的(3n+1)猜想 (15 分) 卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉
1001 害死人不償命的(3n+1)猜想 (15分)
1001 害死人不償命的(3n+1)猜想寫後總結:數字與字母相乘,乘法不能省略;注意區域性變數的位置;別光寫演算法,把\"輸出\"忘記寫.這是一個部分正確的,原因是什麼?#include<iostream>
1001 害死人不償命的(3n+1)猜想 (15分)
題目描述 卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉茲在 1950 年的世界數學家大會上
B1001 害死人不償命的(3n+1)猜想
技術標籤:筆記 害死人不償命的(3n+1)猜想(15分) 卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步
PTA 乙級 1001 害死人不償命的(3n+1)猜想
卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉茲在 1950 年的世界數學家大會上公佈了這
1001 害死人不償命的(3n+1)猜想 (15 分)
1001 害死人不償命的(3n+1)猜想 (15 分) 卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉
PAT乙級 1001 害死人不償命的(3n+1)猜想
卡拉茲(Callatz)猜想: 對任何一個正整數n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把(砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到n=1。卡拉茲在 1950 年的世界數學家大會上公佈了這個猜想,
PAT (Basic Level) Practice 1001 害死人不償命的(3n+1)猜想
卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉茲在 1950 年的世界數學家大會上公佈了這
PAT乙級-1001 害死人不償命的(3n+1)猜想 (15 分) - 簡單模擬
卡拉茲(Callatz)猜想: 對任何一個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到 n=1。卡拉茲在 1950 年的世界數學家大會上公佈了這
1005 繼續(3n+1)猜想 (25分)
卡拉茲(Callatz)猜想已經在1001中給出了描述。在這個題目裡,情況稍微有些複雜。
PAT 1005 繼續(3n+1)猜想 python程式碼滿分
技術標籤:PATpython 1005 繼續(3n+1)猜想 卡拉茲(Callatz)猜想已經在1001中給出了描述。在這個題目裡,情況稍微有些複雜。
PTA-乙級1005 繼續(3n+1)猜想 (25 分)-JAVA
為了方便看題,這裡給出卡拉茲猜想: 卡拉茲(Callatz)猜想: 對任何一個正整數n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把(3n+1)砍掉一半。這樣一直反覆砍下去,最後一定在某一步得到n=1。卡拉茲在
PAT乙級-1005 繼續(3n+1)猜想
卡拉茲(Callatz)猜想已經在1001中給出了描述。在這個題目裡,情況稍微有些複雜。
1005 繼續(3n+1)猜想 (25 分)
卡拉茲(Callatz)猜想已經在1001中給出了描述。在這個題目裡,情況稍微有些複雜。
繼續(3n+1)猜想
繼續(3n+1)猜想 這道題裡面有比較特殊的叫標誌陣列,儲存每個數字的狀態,下標是某數字,賦值1表示此數字被覆蓋。
[UVA100] The 3n + 1 problem.題解
這道橙題也太水了吧!直接模擬輸出流程就可以了! 老規矩,先看題目。 這題讓我們尋找輸入的每對(i,j)中[i,j]內所有數字區間長度的max值。我們可以用模擬遞推對[i,j]內所有的數進行相同的操作。操作流程如下:
解決java maven專案找不到jconsole-1.8.0.jar和tools-1.8.0.jar包問題
今天遇到了這樣一種情況,自己的maven專案中並沒有引用的jar包出現在了Maven Dependencies的依賴包中。而我在pom.xml自己沒有沒有引入啊.
[LEETCODE600] 不含連續1的非負整數 - 數位dp
Description 給定一個正整數 \\(n \\le 10^9\\),找出小於或等於 \\(n\\) 的非負整數中,其二進位制表示不包含連續的 \\(1\\) 的個數。
maven Oracle包不支援12.1.0.2
技術標籤:maven 1.開啟mvnrepository下載一個jdbc包 https://mvnrepository.com/artifact/oracle/oracle-jdbc 我下的是ojdbc10-19.8.0.0.jar 2.開啟cmd輸入以下指令 -Dfile是對應本地路徑