歷屆成果|第 8 屆專題實作・2023

MochaGen 競賽程式測試資料生成器

第一名 競程測資生成

  1. 報名
  2. 線上初賽
  3. 程式挑戰營
  4. YTP2026H2黑客松
  5. 海外參訪

出自第二階段專題實作(第 11 屆起改為黑客松)。

團隊

蔡摩卡與紙箱|指導:鄭瑞光 教授

簡介

演算法競賽的出題者必須自行撰寫 generator 與 validator 來產生測試資料,對新手門檻偏高:jngen、testlib.h 等函式庫文件不易上手,Polygon、TPS 也無法代為撰寫 generator。團隊因此開發 MochaGen,以 Tauri 建置桌面應用程式,前端使用 React、後端使用 Rust,另以 C++ 撰寫、CMake 建置的 Assembler 函式庫負責生成。系統把測資輸入抽象為 Token,涵蓋整數、浮點數、陣列、字串、樹、圖與幾何等類別及其屬性,並以 Google 的 Blockly 積木函式庫做出視覺化的 Token Editor,轉出 generator.cpp 與 validator.cpp,再由 Assembler 串接 jngen 編譯產生測資。成果是一款可一鍵安裝、免環境設定的工具;未來規劃以 AI 將題目敘述自動轉為 Token、支援其他語言並串接 Polygon 與 TPS。

連結

同屆專題