レギュレーション

HACKB の評価方法、提出ステータス、ジャッジサーバーの環境、採点ルールについて説明します。コンテストに参加する前にひととおり目を通してください。

判定プロセス

提出からジャッジ完了までの流れと、各段階で取り得る判定ステータスを示します。

  1. 1. コード提出 (Submit)

    submission.py と requirements.txt を提出することで、ジャッジキューに登録されて評価待機状態(WJ)となります。

  2. 2. ビルド (Build)

    ジャッジサーバーが提出情報を取得し、依存関係の解決とコードの静的検証を行います。提出内容に問題が合った場合、無効な提出(IS)扱いとなり以降の評価は行われません。ビルドに成功すると評価実行状態(RJ)に遷移します。

  3. 3. ジャッジ (Judge)

    ジャッジサーバーが提出コードを実行します。正常に終了した場合は受理状態(AC)となり、それ以外は状況に応じてエラー状態(WA/RTE/TLE/MLE/IE)となります。ACのみ有効なスコアが算出され、ランキングに反映されます。

ジャッジステータスの遷移

提出は「提出 → ビルド → ジャッジ」の 3 フェーズを進み、いずれかの終端ステータスに到達します。

提出は「提出 → ビルド → ジャッジ」の 3 フェーズを進み、いずれかの終端ステータスに到達します。SUBMITBUILDJUDGEWJRJISACWARTETLEMLEIE

提出ステータス

提出は次のいずれかのステータスをとります。Queued / Running は中間状態、それ以外は終端状態です。終端状態のうち Accepted のみ有効なスコアが算出されます。

コード説明
WJWaiting Judge: ジャッジ待ち。Worker が利用可能になり次第実行されます。
RJRunning Judge: ジャッジ実行中。Worker が提出コードを評価しています。
ACAccepted: 評価が成功し、有効なスコアが算出されました。
WAWrong Answer: 出力フォーマットが要件を満たしていない、または値が範囲外などで不正と判定されました。
RTERuntime Error: 実行中に例外が発生して提出コードが異常終了しました。stderr を確認してください。
TLETime Limit Exceeded: 制限時間内に処理が完了しませんでした。
MLEMemory Limit Exceeded: メモリ制限を超過しました。
ISInvalid Submission: 提出ファイルの形式や entrypoint に問題があり、評価を開始できませんでした。
IEInternal Error: ジャッジ基盤側でエラーが発生しました。再提出または運営にお問い合わせください。