主/協辦單位聯絡我們臺大首頁臺大計中
參賽辦法

初賽流程初賽違規申訴程序 決賽規則解題標準解釋歷年比賽題目參考
(注意:部分規則可能會有小幅更動。請常查閱最新消息。)

參賽辦法

參賽流程:

參賽資格:

高中組:
  • 以隊為單位,每隊由至多3位在學同校學生組成,並需有一位具該校任教身分之指導老師。
  • 指導老師需負責證明學生之身分及比賽規則之遵守。
  • 每位老師至多可以同時指導5隊。
國中組:
  • 以隊為單位,每隊由至多2位在學同校學生組成,並需有一位具該校任教身分之指導老師。
  • 指導老師需負責證明學生之身分及比賽規則之遵守。
  • 每位老師至多可以同時指導6隊。
※註:自學方案個案處理,且指導老師須具有中學教師在職證明之身分並不得為參賽者之家長,請逕洽主辦單位,主辦單位保留錄取權利。

比賽方式:

  • 初賽於預定之時間上網參賽,並須報名之隊數超過25隊才舉行。
  • 決賽於臺灣大學計算機及資訊網路中心舉辦。
  • 高中組:取前25名之隊伍晉級決賽,每校至多3隊晉級;得另外邀請3隊全女子隊伍參加決賽(至少須答對一題以上含一題)。
  • 國中組:取前25名之隊伍晉級決賽,每校至多5隊晉級;得另外邀請3隊全女子隊伍參加決賽(至少須答對一題以上含一題)。
※註:自學者每組最多錄取3隊進決賽,主辦單位保留錄取權利。

比賽環境:

  • 初賽評分環境(server)
    作業系統:ubuntu 16.04.01 LTS
    比賽平台:Kattis
    比賽語言:C/C++
    編譯器:gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.2)
    註:比賽平台可先參考 https://open.kattis.com/ 熟悉使用。參賽者需注意程式編譯器版本差異以避免程式碼無法通過編譯
  • 決賽評分環境(server)
    作業系統:ubuntu 16.04.01 LTS
    比賽平台:Kattis
    比賽語言:C/C++
    編譯器:gcc 5.4.0 (Ubuntu 4.8.4-2ubuntu1~16.04)
  • 決賽比賽環境(client)
    作業系統:Windows 7 64bit
    編譯器:MinGW TDM-GCC, 4.9.2, 32bit
    編輯器(IDE):a. Dev C++ 5.11、b. Code::Blocks 16.01、c. gVim 8.0.2、d. notepad++ 6.9.2、e. Sublime Text 2.0.2 (以上軟體僅提供英文介面)

比賽規則:

  • 比賽途中,會監看網路使用情形,且在比賽結束後會閱讀source code,以避免任何舞弊行為。舞弊之隊伍將被取消參賽資格,並由他隊依排名遞補。
  • 初賽時須自行準備網路備用方(只要可以上網地方皆可,沒有場地限制)。
  • 競賽時間內,參賽者除與同隊隊員或本競賽工作人員聯絡外,不得與其他人員以任何方式交談。
  • 參賽者可攜帶書籍、手冊、紙本式程式碼,但不可攜帶任何機器可讀取的軟體或資料。
  • 參賽隊伍如有干擾比賽正常進行之情事,主辦單位得立即停權,以維持比賽順利進行。
  • 本參賽規則如有未盡事宜,主辦單位保留修改之權利。

比賽題目參考:

評分方式:

  • 總答對題數較多者為優勝。
  • 答對題數相同者,以作答耗用時間(分鐘計算)較少者為優勝。
  • 答對的題目中,每送一次錯誤解答就加20分鐘解題時間。
→Top

初賽規則

→Top

初賽違規申訴程序

因初賽採網路模式進行,為避免參賽隊伍有程式碼抄襲之情事,初賽結束後將對參賽隊伍所呈交之程式碼進行審慎檢查。如發現有舞弊情事,主辦單位會以電子郵件(E-mail)及手機簡訊方式通知參賽隊伍之指導老師;參賽隊伍可在規定時間內由參賽學校正式行文到主辦單位提出申訴申請,並敘明申訴理由;主辦單位收到申訴文件後應召開會議,聘請相關專家學者進行審議,回覆判定結果。如舞弊情事確認,為維持比賽公平性及參賽者之權利,舞弊之隊伍將被取消參賽資格;如申訴成功,將依參賽隊伍之初賽排名,必要時以增額方式參加決賽。

申請程序說明:

  1. 程序C.通知指導老師:因初賽違規將以電子郵件(E-mail)及手機簡訊方式於初賽當天通知參賽隊伍之指導老師,故報名資料請務必如實填寫,如填寫不正確或有缺漏將影響到自身權益。
  2. 程序E.申訴申請-參賽學校正式行文(初賽後3天內)及F.主辦單位收件(初賽後5天內):申訴申請表請於線上申請後下載表格(註:本表請於2018年11月27日中午12點前先以傳真方式提出申請始受理申請,請傳真後打電話到02-33665047確認是否收到傳真;正式公文及本表之用印申請正本須於2018年11月27日中午12點前寄達始完成申請程序。)

初賽違規申訴程序流程圖

→Top

決賽規則

比賽規則:

  1. 除了觀看比賽成績及使用介面程式之外,禁止使用網路。
  2. 在比賽期間,除了同隊之參賽者及大會工作人員之外,禁止和其他人交談。
  3. 參賽者可以攜帶參考書籍及筆記,但不可以攜帶具計算功能之機器、或機器可讀之資料。
  4. 每隊使用一台電腦。
  5. 比賽電腦問題請找考場組工作人員、題目問題請直接於比賽介面詢問。
  6. 提供餐點及飲料於試場走廊上,可自行食用,但請勿帶入考場食用。
  7. 禁止任何破壞比賽場地秩序、干擾他隊解題之行為。
  8. 參賽隊伍如有干擾比賽正常進行之情事,主辦單位得立即停權,以維持比賽順利進行。

計分方式:

  • 總答對題數多者為優勝。
  • 若答對題數相同,以作答耗用時間(以分鐘計算)較少者優勝。
  • 答對的題目中,每送一次錯誤解答,就加上 20 分鐘解題時間。

注意事項:

  • 不可攜帶任何電子通訊器材進入比賽場地。
→Top

解題標準解釋

程式碼提交後,可能的裁判(Judge)結果如下:

項目 裁判結果 說明 是否罰時
(Penalty)
1 Accepted 程式正確 No
2 Compile Error 程式編譯錯誤。請參考編譯器輸出的額外訊息。比賽環境的編譯器與參數設定可以在 technical info 頁面找到。 No
3 Run Time Error 程式執行錯誤。
1. 程式結束時的回傳值非零 (non-zero exit),或是有 exception 發生。有可能是因測試資料造成非預期的結束。
2. 請確定你的 main 函式不要回傳非零的值。
Yes
4 Time Limit Exceeded 程式執行時間超過限制門檻,因而被強制終止。
請注意,程式輸出的結果在正確結束之前都不會被檢查,所以拿到 Time Limit Exceeded 無法確認程式結果是否正確。
Yes
5 Wrong Answer 程式於時限內結束,但答案錯誤。 Yes
6 Output Limit Exceeded 程式產生過多輸出,導致程式被強迫終止。 Yes
7 Memory Limit Exceeded 程式使用超過允許範圍的記憶體。 Yes
8 Judge Error 裁判系統錯誤。請透過比賽介面,提出問題。或洽工作人員。 No


補充:
當遇到Memory Limit Exceeded時,程式可能衍生其他種錯誤:

  1. C程式:使用 malloc,但記憶體不足時,會回傳null pointer,如果沒有檢查而直接使用該變數,可能造成 Run Time Error。
  2. C++程式:使用new配置過多的記憶體,會造成 SIFABRT(6) signal 並產生 Run Time Error。

→Top