Tuesday, September 02, 2008 - 文章

千呼萬喚始出來--黑暗盃程式魔人賽考題

話說上回有人先是放話說要送VSTS2008,接著煞有其事地丟出考題RFC,蒐集了各方高手的意見,接著就悶不吭聲了半個多月,這... 是在莊孝維嗎?

真是對不起大家,這陣子不知在瞎忙什麼,八月份Blog的PO文數量甚至創下歷史新低,但"良心告訴我,我不能再繼續拖延自己,拖延別人,決定選擇面對" XD,題目終於來囉!

參賽者可下載比賽專用程式包回家試跑。

【比賽專用包說明】

ZIP檔內含CFFGenScript.exe、CFFQuestion.txt、DummyPlayer.txt及MiniCSharpLab14.exe。使用時請仿照DummyPlayer.txt將參賽類別存成PlayerClassName.txt(PlayerClassName需與你宣告的類別名稱完全相同),執行
        CFFGenScript PlayerClassName
程式會產生一個名為PlayerClassName的子目錄,裡面有PlayerClasName-Test1.cs, PlayerClasName-Test2.cs, … , PlayerClasName-Test6.cs等六個回合的測試程式以及RunTest-PlayerClassName.bat,執行RunTest-PlayerClassName.bat就會依序跑完六回合的比賽並將結果寫成Log檔。

【比賽規則】

  1. 參賽者請撰寫一個繼承Player的C# Class(說明請參考先前的PO文),以提供Source Code的方式寄到指定Email(iwantvsts2008 @ darkthread.net)信箱參賽。
  2. 本著砌磋武藝的宗旨,所有參賽者的程式碼最後會公開給大家互相交流,如果你不同意分享程式碼或程式碼另有他用,請不要參加比賽。
  3. 參賽者提供的Source Code只需包含自己寫的Class(不含GameHost及Player抽象類別,請參程式包中的DummyPlayer.txt),存成PlayerName.txt,比賽時透過CFFGenScript.exe,將參賽者程式與遊戲主持人程式結合成一個CS,並由Mini C# Lab 1.4版(尚未正式Release的新版,支援批次執行功能)以Batch方式在Q6600+8G RAM實體機上執行(原WinXP 1G VM惡魔島賽程取消)。
  4. 參賽者程式將針對(maxNum/digits): 10/4, 32/12, 64/24, 256/64, 1024/256, 4096/1024六種難易程度不同的猜數字挑戰,每種題目跑六次為一回合(第一次為暖身,時間會偏長,故不計入成績),計算後五次完成解題的猜測次數及耗用時間取平均值。
  5. 為確保公平性,比賽題目產生的亂數種子固定,故每個參賽者要解的題目都是相同的,至於亂數種子在比賽前會參考樂透開獎等數字隨機決定。
    (即CFFQuesion.txt裡的static int[] randomSeeds = new int[] { 1, 2, 3 … },正式比賽時會更換數字)
  6. 每回合猜數字挑戰總耗用時間(含主持人判斷幾A幾B的時間)不得超過180分鐘(Mini C# Lab 1.4支援執行時限功能),超過即算挑戰失敗不計入成績。若程式出錯導致程式中止,該回合亦不計入成績。 (注意: 每回合要連解六個題目,六個題目必須都解出來,且時間不超過180分鐘,該回合才會有成績)
  7. 可使用Multithreading解題加快速度,但禁止使用資料庫或檔案作為輔助儲存空間。
  8. 成績計算方式如下: (次數少積分為速度快的兩倍,困難的題目積分較高,每回合解出題目即有分數,第一名及第二名可獲得額外積分)
    題目 10/4 32/12 64/24 256/64 1024/256 4096/1024
    次數No.1 10 10 16 16 24 32
    次數No.2 5 5 8 8 12 16
    速度No.1 5 5 8 8 12 16
    速度No.2 3 3 4 4 6 8
    完成解題 1 1 2 2 3 3
    逾時或出錯 0 0 0 0 0 0
    次數、速度及解題三個分數累計計算,例如: DarkPlayer在10/4回合中次數排第2,速度排第1,則在第一回合可獲得5 + 5 + 1 = 11分。
  9. 比賽名次由各參賽者六回合總積分決定最後名次,第一名就可以將VSTS2008+MSDN抱回家。
  10. 主辦單位也會派出一位DarkPlayer攪局參賽,其積分會列入排名,但無領獎資格。

歡迎各方武林高手前來挑戰,請在9/20 00:00前將程式(其實只要PlayerClassName.txt一個檔即可)寄到iwantvsts2008 @ darkthread.net。

PS: 大會保留小幅調整比賽規則的權利,但如無重大意外將會依以上方式進行

[2008-09-02 18:00更新]

經一些參賽者反應,原先的GameHost效率奇差無比,在高難度題目時耗用掉絕大部分寶貴的解題時間。我特地好好地修理了一下主持人,現在他乖多了,會比之前快上N倍,請大家重新下載比賽程式包改用新版練習。

搜尋

Go

<September 2008>
SunMonTueWedThuFriSat
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011
 
RSS
【工商服務】
最新回應

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


BlogLook Score and Rank

Syndication