精華區beta FCK 關於我們 聯絡資訊
================================================================== 主旨:   公開抽籤系統,讓大家都可以在公正數據公開後簡單算出自己組別。 並了解此次比賽抽籤原理。     本程式作為主辦單位抽籤使用,可大幅減少人工作業與板主負擔,板主 僅需按一個按鈕即可完成抽籤事宜。   本程式可推廣到任何比賽抽籤使用。 ================================================================== 下載點:  http://tinyurl.com/2kqw66            (感謝葉子提供空間,也徵求棋友提供其他空間) ================================================================== 原始程式碼: int Index[SumOfPeople]; AnsiString strNum = InputBox("給定樂透獎開獎數字","","0"); int Num = strNum.ToIntDef(0),index; if(Num<1 || Num>42) { ShowMessage("不合法的公正數字!請檢查是否為1~42的數字!"); return; } Label1->Caption = "公正數字為:"+AnsiString(Num); for(index=0;index<SumOfPeople;index++) Index[index] = (index*Num)%SumOfPeople; AnsiString AllSortName[SumOfPeople]; for(index=0;index<SumOfPeople;index++) AllSortName[Index[index]] = AllName[index]; Memo1->Clear(); for(index=0;index<SumOfPeople;index++) { if(index%8==0) { Memo1->Lines->Append("====================================="); Memo1->Lines->Append(GroupM[index/8]); } Memo1->Lines->Append(AnsiString(index)+":"+AllSortName[index]); } ================================================================== 本程式所用時間複雜度為O(n) n為比賽人數,為線性時間,我們可以證明 程式最高效能必大於等於線性時間,足見本演算法之效能。 若對本程式有其他建議,歡迎諮詢。 -- 天禁魔法團於 telnet://ptt2.cc DreamYeh2 板 特設天使魔法學院 歡迎對五子棋有興趣朋友來參觀唷!! 想了解更多天使,歡迎來 telnet://bbs.wretch.cc P_DreamYeh 板灌水^_^   -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.202.86.252