java 一問

提示: 作者被禁止或刪除 內容自動屏蔽

c兄知吾知mark six 全餐程式點寫
kaybow 發表於 2011-9-11 15:37


要列出所有組合你部機一定hand硬
用數學計總數就好似nPr

TOP

要列出所有組合你部機一定hand硬
用數學計總數就好似nPr
神秘二代 發表於 2011-9-11 23:38


有冇咁易hang

TOP

本帖最後由 神秘二代 於 2011-9-12 03:43 編輯
有冇咁易hang
insanity 發表於 2011-9-12 01:46


個programe都會loop hang左啦....你試下寫個程式loop 1~幾十億....起碼loop十幾分鐘

TOP

個programe都會loop hang左啦....你試下寫個程式loop 1~幾十億....起碼loop十幾分鐘 ...
神秘二代 發表於 2011-9-12 03:40


行得耐唔等於hang左喎

TOP

49C6都係得千幾萬個組合,普通PC都計到

個programe都會loop hang左啦....你試下寫個程式loop 1~幾十億....起碼loop十幾分鐘 ...
神秘二代 發表於 2011-9-12 03:40

TOP

唔會hang, even 你一路用其他program都無問題,  mark 6 係 2nd level cache 入面夠哂放.如果係multi core cpu的話,基本上影響唔到其他cpu

TOP

提示: 作者被禁止或刪除 內容自動屏蔽

TOP

寫個work的唔難,可以用HashSet檢查有冇重覆
但寫個efficient的就比較難

回復 8# kaybow

TOP

本帖最後由 lwk618 於 2011-9-13 16:48 編輯

寫左個程式,唔知對唔對
  1. class MarkSix {
  2.         public static void main(String arg[]){
  3.                 int count=0;
  4.                 for(int numA=1;numA<=44;numA++){
  5.                         for(int numB=numA+1;numB<=45;numB++){
  6.                                 for(int numC=numB+1;numC<=46;numC++){
  7.                                         for(int numD=numC+1;numD<=47;numD++){
  8.                                                 for(int numE=numD+1;numE<=48;numE++){
  9.                                                         for(int numF=numE+1;numF<=49;numF++){
  10.                                                                 System.out.println(numA+"  "+numB+"  "+numC+"  "+numD+"  "+numE+"  "+numF);
  11.                                                                 count++;
  12.                                                         }
  13.                                                 }
  14.                                         }
  15.                                 }
  16.                         }
  17.                 }
  18.                 System.out.println("\n"+count);
  19.         }
  20. }
複製代碼
補充:經過漫長計算得出count=13983816,同49C6一樣。

TOP

相關文章