* | Online Judge 的運作原理 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
裁判系統會以數量不一的測試資料去測試您所送出的程式碼來判定您的程式是否完全正確,若通過所有的測試資料的測驗,則系統認定您的程式碼為通過,否則將會呈現不同原因的結果,如 NA, WA, TLE, MLE, OLE, CE, RE...等。因此必須在程式中放入一個 while 迴圈來讀取所有的測試資料。程式碼請參考 a001。 系統特色:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* | 主要對象 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
主要對象為程式語言初學者 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* | 錯誤訊息的意義 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AC: Accept 即表示通過 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* | 題目的進場/退場機制 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
本系統的特色之一是持 Open Source/WIKI 的概念,由廣大使用者共同參與共同成長的理念開放解題 30%
以上的使用者可以自行新增題目。這是 Online Judge
系統的創舉。但為了避免有問題的題目充斥,因此特別訂定“題目退場機制”。
本辦法訂定時間 2009-05-08 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* | 使用者言論管理辦法 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
使用者違反下列規定時,站務管理員可依情況輕重限制使用者之使用權限,處理原則如下: 違規定義及標準: 以下所稱“言論”包含匿稱、帳號、討論區文章、題目內容、簡訊...等任何在 ZeroJudge 內發布的文字或圖片等相關資訊
一、不當言論
二、網路濫用、攻擊
三、廣告 本辦法未盡周全之處,得經站務會議決議後修訂。
本辦法訂定時間 2009-07-06 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* | 各項解題語言所使用的系統編譯器 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
目前連結的評分主機為:ZeroJudgeServer 評分主機資訊: 本系統目前支援的程式語言如下: C: gcc -std=c11 (gcc 7.4.0)C解題範例
CPP: g++ -std=c++14 (g++ 7.4.0) CPP解題範例
JAVA: OpenJDK java version 1.8.0_222 JAVA解題範例
PYTHON: Python 3.6.9 PYTHON解題範例
Version:
ZeroJudge: [refs/heads/hotfix/3.6/main_CSRF@{0}] [CSRF] 修正 CodeDiffs, 手動評分 JudgeServer: [refs/heads/develop/3.6/main@{0}] main: DONELIST | |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
* | 後記:關於 ZeroJudge | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZeroJudge 是一個 Online Judge 系統亦即線上解題系統,中文來說有許許多多不同的翻譯名詞,諸如:在線裁決系統、在線評判系統、在線提交系統...等等不一而足,建議還是直接稱呼 Online Judge 系統。主要是用來讓有意練習程式語言的人士(主要是學生),有一些題目可以練習,並且可以知道自己所寫的程式是不是正確。 目前世界上最著名的 Online Judge 便是大名鼎鼎的 UVa Online Judge System,沒聽過?那是因為大家都叫他 ACM。至於其中原因請參考 DJWS 所寫的『Online Judge System 起源與由來』。目前由西班牙 Valladolid (巴亞多利)大學(http://online-judge.uva.es/problemset/)所維護,目前已經有2000個題目,讓全世界的程式愛好者們想辦法去解決,這是全世界對寫程式有興趣的人一個練習的好地方。 然而,UVa(ACM)題目大多數都是需要用到許多演算法及程式技巧,對於中上程度的程式學習者具有很好的練習效果,但對於初學者,可就會覺得障礙連連,深受打擊了。 作者(Jiangsir)所服務學校(國立高雄師大附中)練習程式設計的學生也遭遇類似的情況,因此曾積極尋找備有初級題目的 Online Judge 系統(首先排除國外網站,因為語言障礙足以擊退絕大多數初學者),可惜無法如願,並且發現此時(2006)國內各大學尚未具備公開上線,可供自由練習的 Online Judge 系統。也曾嘗試考慮北京大學開發的(Peking JudgeOnline),但該系統並未開放原始碼許多功能無法動手修改。最後終於決定自行開發,於是 ZeroJudge 計畫誕生,代表從零開始。 大事紀:
|