1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的數字遊戲

Time Limit: 5 Sec  Memory Limit: 64 MB
Submit: 502  Solved: 432
[Submit][Status]

Description

奶牛們又在玩一種無聊的數字遊戲。輸得很鬱悶的貝茜想請你寫個程式來幫她在開局時預測結果。在遊戲的開始,每頭牛都會得到一個數N(1<=N<=1,000,000)。此時奶牛們的分數均為0。如果N是奇數,那麼奶牛就會把它乘以3後再加1。如果N是偶數,那麼這個數就會被除以2。數字每變動一次,這頭奶牛就得到1分。當N的值等於1時,遊戲結束,此時的分數就是這頭奶牛在這局遊戲中的最終得分。 以下是N的初始值為5時,一局遊戲的完整過程: N 操作後所得數 註釋 總分 5 16 3*5+1 1 16 8 16/2 2 8 4 8/2 3 4 2 4/2 4 2 1 2/2 5 這頭奶牛的最終得分是5。

Input

* 第1行: 一個正整數,N

Output

* 第1行: 輸出一個正整數N,即奶牛在這局遊戲中的最終得分

Sample Input

112

Sample Output

20

HINT

 

Source

Gold

題解:

3n+1問題。。。

程式碼:
 var n,ans:longint;
begin
assign(input,'input.txt');assign(output,'output.txt');
reset(input);rewrite(output);
readln(n);ans:=;
while n<> do
begin
inc(ans);
if odd(n) then n:=*n+ else n:=n>>;
end;
writeln(ans);
close(input);close(output);
end.