如果n為偶數,則將它除以2,
如果n為奇數,則將它加1或者減1。
問對於乙個給定的n,怎樣才能用最少的步驟將它變到1。
例如:
n= 61
n-- 60
n/2 30
n/2 15
n++ 16
n/2 8
n/2 4
n/2 2
n/2 1
====
public class myclass
public static void printsteps()
console.writeline(results[0]);
} public static void calc(int intputnumber)
public static void calcstep(int num)
else
if((num-1)%4==0) }
} else }
} #region helper methods
private static void wl(object text, params object args)
private static void rl()
private static void break()
#endregion
}
一道面試題
一道面試題 射擊運動員10發打中90環有多少種可能,請編寫程式計算出來,並列印出結果,0環和10環均有效。打中90環就是沒打中10環,所以打中90環跟打中10環的可能性是一樣的。然後開始遞迴狂打槍,一到10就記錄 if params i 10 在迴圈的控制中已經排除了大於10的可能性 i 10 pa...
一道面試題
前些時候在找工作,就在準備結束此次找工作歷程的時候,去了一家公司面試,去了之後技術經理直接帶到一台電腦旁,給了一張紙條,上面是這樣的題目 用c或c 來實現 1 建立一棵樹,該樹的深度是隨機的,每個節點的位元組點數是隨機的。2 給每個節點分配一段隨機大小的記憶體空間,給每個節點賦乙個隨機數。3 遍歷這...
一道面試題
有一張表兩個字段 date num,現在要產生如下的 請設計相關sql語句。年份 1月 2月 3月 4 月 5月 6月 7月 8 月 9月 10月 11月 12 月 2010 數量 數量 數量 數量 數量 數量 數量 數量 數量 數量 數量 數量2011 數量 數量 數量 數量 數量 數量 數量 數...