程式解題系統使用手冊
* Online Judge 的運作原理
 

裁判系統會以數量不一的測試資料去測試您所送出的程式碼來判定您的程式是否完全正確,若通過所有的測試資料的測驗,則系統認定您的程式碼為通過,否則將會呈現不同原因的結果,如 NA, WA, TLE, MLE, OLE, CE, RE...等。因此必須在程式中放入一個 while 迴圈來讀取所有的測試資料。程式碼請參考 a001。

系統特色:
  • 可以告訴使用者錯誤答案發生在第幾行,方便除錯。
  • 使用者參與管理工作,使用者可利用系統出題目以及舉辦考試。
  • 可直接分享程式碼,以及站內簡訊進行討論。
  • 可預約競賽,時間一到即可自動開始,並自動結束,不需管理者操作。
  • 可在系統上進行開課,可成為一個開課平臺。
* 主要對象
  主要對象為程式語言初學者
* 錯誤訊息的意義
 

AC: Accept 即表示通過
NA: Not Accept 表示在多個測資點的情況下,有部分測資點無法通過
WA: Wrong Answer 表示答案錯誤, 請仔細比對,務必符合題目要求
TLE: Time Limit Exceed 表示執行超過時間限制
MLE: Memory Limit Exceed 表示程序超過記憶體限制
OLE: Output Limit Exceed 表示程序輸出超過限制
RE: Runtime Error 表示執行時錯誤,通常為記憶體配置錯誤 如:使用了超過陣列大小的位置
RF: Restricted Function 表示使用了被禁止使用的函式,並在錯誤訊息中指明使用了什麼不合法的函式。
CE: Compile Error 表示編譯錯誤
SE: System Error 包含 Compile, Runtime 等未定義的錯誤均屬於 System Error

由於本系統以初學者為導向,因此錯誤訊息儘可能提供最詳細的錯誤資訊,如 WA 訊息會告知您正確答案(題目測資已公開時),以及在第幾組資料時發生,讓使用者比較容易判斷錯誤發生在哪哩,而不會像在 ACM/UVa 裡明明做對了,但是就是有莫名的格式錯誤,卻找不出格式錯誤在哪的困境。

* 題目的進場/退場機制
 

本系統的特色之一是持 Open Source/WIKI 的概念,由廣大使用者共同參與共同成長的理念開放解題 30% 以上的使用者可以自行新增題目。這是 Online Judge 系統的創舉。但為了避免有問題的題目充斥,因此特別訂定“題目退場機制”。
凡符合以下事項 1 項含以上者,"站務管理員"保留將題目下架之權利。
* 題目內容易引發爭執者,如:宗教、政治議題、種族議題、歷史情結、文化衝突...等。
* 容易引發閱讀者不快者,如犯罪、色情、賭博、人身攻擊、影射...等不當文字。
* 題目敘述有誤或不完整、測資有誤,致使使用者無法作答者
* 進行廣告或置入性行銷者
* 與其它題目高度雷同或完全相同者
* 涉及著作人格權問題者,包含冒名投題、原作者提出異議並主張下架者...等
* 內含其它不當內容且遭致使用者投訴者

本辦法未盡周全之處,得經站務會議決議後修訂。

本辦法訂定時間 2009-05-08
(2009-07-06 第一次修訂)

*

使用者言論管理辦法

 

使用者違反下列規定時,站務管理員可依情況輕重限制使用者之使用權限,處理原則如下:

違規定義及標準:

以下所稱“言論”包含匿稱、帳號、討論區文章、題目內容、簡訊...等任何在 ZeroJudge 內發布的文字或圖片等相關資訊

一、不當言論
1、違反中華民國現行法律法規
2、涉及宗教、政治議題、種族議題、歷史情結、文化衝突...等
3、涉及犯罪、色情、賭博、人身攻擊、影射、隱私...等不當文字
4、在討論版要求貼出完整程式碼或是測資的正確輸出者。

二、網路濫用、攻擊
以任何形式的網路技巧濫用或攻擊,使得使用者無法順利使用網站功能。

三、廣告
請勿在言論當中進行商業廣告或置入性行銷

本辦法未盡周全之處,得經站務會議決議後修訂。

本辦法訂定時間 2009-07-06

* 各項解題語言所使用的系統編譯器
 

目前連結的評分主機為:ZeroJudgeServer

評分主機資訊:

本系統目前支援的程式語言如下:

C: gcc -std=c11 (gcc 7.4.0)(*1.0)
C解題範例


CPP: g++ -std=c++14 (g++ 7.4.0)(*1.0)
CPP解題範例


JAVA: OpenJDK java version 11.0.28(*3.0)
JAVA解題範例


PYTHON: Python 3.8.10(*3.0)
PYTHON解題範例


17833370 tt20090912@g ... (王庭鈞) a005. Eva 的回家作業 -- POJ WA (line:1)
2026-04-18 17:02:24.213
17833369 hth0305@smai ... (09謝泰泓) a244. 新手訓練 ~ for + if -- 新手訓練系列 ~ 1 RE (code:1)
2026-04-18 17:02:23.73
17833368 liusteve724@ ... (Steve) d914. 2. 圍棋資料庫比對 -- 99學年度 全國 資訊學科能力競賽 NA (score:0%)
2026-04-18 17:02:19.464
17833367 s1130253 (Nemo Lin) e795. p2.質數日 -- 2019年 12月 TOI 新手同好會 AC (75ms, 6.9MB)
2026-04-18 17:02:12.223
17833365 hth0305@smai ... (09謝泰泓) a244. 新手訓練 ~ for + if -- 新手訓練系列 ~ 1 WA (line:2)
2026-04-18 17:01:45.735
17833364 5b3g0027@stu ... (只會用Python的小白) a244. 新手訓練 ~ for + if -- 新手訓練系列 ~ 1 AC (8ms, 3.4MB)
2026-04-18 17:01:45.289
17833363 willychen230 ... (陳軒偉Willy) a149. 乘乘樂 AC (1ms, 3.4MB)
2026-04-18 17:01:27.116
17833362 liusteve724@ ... (Steve) d914. 2. 圍棋資料庫比對 -- 99學年度 全國 資訊學科能力競賽 NA (score:0%)
2026-04-18 17:01:26.554
17833361 yizhe (yizhe) b983. NOIP2012 Day1.1.Vigenère密码 -- NOIP 2012 提高组 Day1 第一题 AC (7ms, 8.4MB)
2026-04-18 17:01:21.532
17833360 jx47806800@g ... (何宜璟) c002. 10696 - f91 -- UVa 10696 AC (8ms, 8.4MB)
2026-04-18 17:01:11.842
17833359 willychen230 ... (陳軒偉Willy) a149. 乘乘樂 CE
2026-04-18 17:01:03.483
17833358 xmlinjerry@g ... (Jerry Lin) h083. 3. 數位占卜 -- 2022年1月 APCS NA (score:5%)
2026-04-18 17:00:54.404
17833356 tomycbf2023@ ... (唐二三) b682. 2. 同學早安 -- 2015 高雄市 資訊學科能力競賽 高中組 AC (7ms, 8.2MB)
2026-04-18 17:00:06.158
17833355 liusteve724@ ... (Steve) d914. 2. 圍棋資料庫比對 -- 99學年度 全國 資訊學科能力競賽 NA (score:0%)
2026-04-18 16:59:59.494
17833354 liudan2002@g ... (Daniel Liu) b682. 2. 同學早安 -- 2015 高雄市 資訊學科能力競賽 高中組 AC (7ms, 8.2MB)
2026-04-18 16:59:56.885
17833352 ilovesharks9 ... (用叉子桶爆你) e795. p2.質數日 -- 2019年 12月 TOI 新手同好會 NA (score:80%)
2026-04-18 16:59:40.348
17833351 catwhy.ph@gm ... (itz_gud_inuv) e795. p2.質數日 -- 2019年 12月 TOI 新手同好會 NA (score:0%)
2026-04-18 16:59:37.495
17833350 wolfytien88@ ... (Wolfy Tien) h083. 3. 數位占卜 -- 2022年1月 APCS AC (0.4s, 16.7MB)
2026-04-18 16:59:22.544
17833349 gamerid0720@ ... (daniel chen) e924. pC. 括號配對 -- 2017 大學 學測 推甄 申請 二階 AC (51ms, 8.5MB)
2026-04-18 16:59:17.359
17833346 frankyang666 (teacher_frank) m932. 2. 蜜蜂觀察 -- 2024年1月 APCS NA (score:0%)
2026-04-18 16:58:50.508
17833345 liusteve724@ ... (Steve) d914. 2. 圍棋資料庫比對 -- 99學年度 全國 資訊學科能力競賽 NA (score:0%)
2026-04-18 16:58:49.477
17833344 310230@gm.pt ... (黃子暢) a244. 新手訓練 ~ for + if -- 新手訓練系列 ~ 1 AC (8ms, 3.4MB)
2026-04-18 16:58:47.713
17833343 ilovesharks9 ... (用叉子桶爆你) e795. p2.質數日 -- 2019年 12月 TOI 新手同好會 NA (score:80%)
2026-04-18 16:58:18.356
17833342 liudan2002@g ... (Daniel Liu) b682. 2. 同學早安 -- 2015 高雄市 資訊學科能力競賽 高中組 NA (score:56%)
2026-04-18 16:58:05.463
17833340 yu1023he@gma ... (王宇和) m880. 撲克牌-抽鬼牌 -- 小億 教學題 AC (7ms, 8.2MB)
2026-04-18 16:57:57.74
17833337 linda1010lia ... (Linda) a244. 新手訓練 ~ for + if -- 新手訓練系列 ~ 1 AC (21ms, 8.2MB)
2026-04-18 16:57:30.969
17833336 awkai (awkai) q181. 1. 等紅綠燈 -- 2025年1月 APCS AC (1ms, 3.2MB)
2026-04-18 16:57:29.484
17833335 asd095506272 ... (resen) a104. 排序 -- yoooooooo AC (2ms, 3.4MB)
2026-04-18 16:57:23.999
17833331 catwhy.ph@gm ... (itz_gud_inuv) e795. p2.質數日 -- 2019年 12月 TOI 新手同好會 NA (score:0%)
2026-04-18 16:56:51.742
17833329 5b3g0027@stu ... (只會用Python的小白) a020. 身分證檢驗 AC (1ms, 3.4MB)
2026-04-18 16:56:38.178
17833328 liusteve724@ ... (Steve) d914. 2. 圍棋資料庫比對 -- 99學年度 全國 資訊學科能力競賽 NA (score:0%)
2026-04-18 16:55:13.316
17833325 asd095506272 ... (resen) a104. 排序 -- yoooooooo WA (line:1)
2026-04-18 16:54:33.482
17833324 liudan2002@g ... (Daniel Liu) b682. 2. 同學早安 -- 2015 高雄市 資訊學科能力競賽 高中組 NA (score:28%)
2026-04-18 16:54:18.577
17833321 5b3g0049@stu ... (何紹綸) a005. Eva 的回家作業 -- POJ AC (1ms, 3.2MB)
2026-04-18 16:53:17.751
17833320 willychen230 ... (陳軒偉Willy) a149. 乘乘樂 WA (line:1)
2026-04-18 16:53:08.17
17833319 xmlinjerry@g ... (Jerry Lin) h083. 3. 數位占卜 -- 2022年1月 APCS AC (0.4s, 16.6MB)
2026-04-18 16:52:02.708
17833318 5b3g0049@stu ... (何紹綸) a005. Eva 的回家作業 -- POJ WA (line:3)
2026-04-18 16:51:42.78
17833317 hth0305@smai ... (09謝泰泓) f423. 高雄市109年資訊競賽國中組第一題 -- 2020 高雄市 資訊學科能力 複賽 109高雄市資訊學科能力複賽 AC (7ms, 8.4MB)
2026-04-18 16:51:30.483
17833316 liudan2002@g ... (Daniel Liu) b682. 2. 同學早安 -- 2015 高雄市 資訊學科能力競賽 高中組 NA (score:28%)
2026-04-18 16:51:25.477
17833314 willychen230 ... (陳軒偉Willy) a149. 乘乘樂 WA (line:1)
2026-04-18 16:51:03.652
17833313 marsissocute ... (Jamin Ben) d449. 垃圾信件 RE (SIGSEGV)
2026-04-18 16:50:54.611
17833312 5b3g0027@stu ... (只會用Python的小白) a006. 一元二次方程式 AC (1ms, 3.4MB)
2026-04-18 16:50:27.801
17833311 goodby0717@g ... (小鳥遊星野) a244. 新手訓練 ~ for + if -- 新手訓練系列 ~ 1 AC (18ms, 10.5MB)
2026-04-18 16:50:13.85
17833309 willychen230 ... (陳軒偉Willy) a149. 乘乘樂 WA (line:1)
2026-04-18 16:49:45.303
17833308 liusteve724@ ... (Steve) d914. 2. 圍棋資料庫比對 -- 99學年度 全國 資訊學科能力競賽 NA (score:0%)
2026-04-18 16:49:40.606
17833307 xmlinjerry@g ... (Jerry Lin) h083. 3. 數位占卜 -- 2022年1月 APCS NA (score:15%)
2026-04-18 16:49:35.697
17833306 yu1023he@gma ... (王宇和) f580. 2. 骰子 -- 2020年7月 APCS AC (7ms, 8.4MB)
2026-04-18 16:49:22.225
17833304 asd095506272 ... (resen) a104. 排序 -- yoooooooo WA (line:1)
2026-04-18 16:48:54.977
17833303 LittleOrange ... (LittleOrange666) d042. 11420 - Chest of Drawers -- UVa 11420 RE (SIGSEGV)
2026-04-18 16:48:31.991
17833302 birdca (ca) d550. 物件排序 AC (0.3s, 47.2MB)
2026-04-18 16:48:05.241
Version:
ZeroJudge: tag:3.8 branch: develop/3.8/misc commit: f640a9f message: [ToFix] 2 high severity vulnerabilities committime: 2026-04-07T12:01:28+0800 buildtime: 2026-04-07T12:07:40+0800
JudgeServer: tag:3.8 branch: develop/3.8/isolate commit: 4669e01 message: PYTHON build: 2026-04-07T15:10:58+0800 |
* 後記:關於 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 計畫誕生,代表從零開始。

大事紀:

  • 94學年度首度運用在學生課堂程式考試上,該版本為手動驗證,由人工判斷程式是否正確,此時僅為一個線上測驗系統。
  • 2006年中,改寫整個操作模式,使其朝向 Online Judge 架構發展,仍應用於程式考試上。
  • 同年,完成自動裁判服務 (Judge Server),可判斷出 Accept, Wrong Answer, Time Limit Exceed, Runtime Error, Restricted Functions, Compile Error, System Error...等狀態,至此可算是一個初步堪用的 Online Judge 系統。
  • 2007年初,公開上線供公眾練習使用,同時借此檢驗系統穩定度,並逐步發掘問題,逐步修正。
  • 2007年中,發展完成多重判決(分段計分)及條件式判決(Special Judge),因此可以正確判定可列舉的多重解答以及難以列舉或甚至無法列舉,但有規則可循的不特定測資。
  • 2007年底,獲教育部全國校園軟體創意競賽 教學應用及自由創意組 第二名。
  • 2008年初,實作完成多人管理模式,使用者可增加題目及舉辦考試,正式具備使用者參與的特性。
  • 2008年底,舉辦第一屆海峽兩岸青少年程式設計競賽。
  • 2009年,獲得教育部『國際大專院校程式設計推廣與培訓計劃』採用作為解題平臺,網址: http://ptc.moe.edu.tw/
  • 2010年,獲『高雄市資訊學科能力競賽複賽』採用作為正式競賽系統。
  • 2011年,提交之程式碼突破 100 萬筆。題目數量突破 1000 題。
  • 2014年,提交之程式碼達到 200 萬筆。
  • 2016年,提交之程式碼達到 300 萬筆。
  • 2017年,ZeroJudge 虛擬機版本開始提供下載測試。
  • 2020年,APCS 程式練習網上線 https://apcsclass.csie.ntnu.edu.tw