題目:老師想要套用一個自訂的計分公式,對於遲交或資源用量過多的繳交紀錄給予懲罰。
Pipeline 設計:
- 核心評測:先根據程式的正確性進行評測,得到一個 原始分數。
- 自訂計分階段:在 Pipeline 的最後加入一個專門用來算分的階段。這個階段不執行學生程式,而是跑老師提供的一個特殊計分腳本。
- 計分腳本邏輯:這個腳本會收到一個 JSON 物件,裡面包含這次繳交的詳細資訊,例如 原始分數、遲交秒數 和 記憶體用量峰值。腳本接著會根據老師的公式計算出 最終分數 並印到標準輸出。
- 範例 (遲交懲罰):最終分數 = max(0, 原始分數 * (86400 - 遲交秒數) / 86400)
- 範例 (遲交懲罰):最終分數 = max(0, 原始分數 - 20 * 遲交週數)
- 範例 (記憶體懲罰):最終分數 = 原始分數 * (1.2 - 0.4 * min(記憶體用量MB, 16) / 16)
題目:老師想要套用一個自訂的計分公式,對於遲交或資源用量過多的繳交紀錄給予懲罰。
Pipeline 設計: