FrontPage
Universidad de Valladolid の Online Judge を PC^2 で使おうとするための PC^2 拡張です。製作中。α版未満。
つかいかた †
# そのうちもう少しマシな使い方にしますがとりあえずバージョン。
注意事項 †
- JavaMail の実行環境が必要です。必然的に JavaBeans Activation Framework も。
- POP 受信できるメールアカウントが必要です。
- PC^2 サーバと同じホストでしか実行できません。
(pc2v8.ini を読んでいないため。ソース書き換えれば可能)
- Web を閲覧するのにプロキシーを通す必要がある場合はソースの書き換えが必要 (HTTPValladolid.java)
- 送られてきたプログラムは、全部同じ UVA アカウントで送信します。
- 用いる UVA アカウントの設定を「常に登録したメールアドレスに結果を送信」に設定してください
手順 †
- PC^2 をインストールしたディレクトリ直下 (pc2server.bat とかがあるとこ) に展開
- JavaMail と JavaBeans Activation Framework をダウンロードして、同じディレクトリに展開
(mail.jar と activation.jar だけ同じディレクトリに置く)
- java -cp .;mail.jar;activation.jar *.java とかやってコンパイル
- 普通に PC^2 サーバを起動、アカウント等を設定 (少なくとも Judge が一つ必要)
- uvajudge.bat を実行 (UNIX 系の場合は適当にスクリプト書いて)
- PC^2 の Judge アカウント, パスワード, メールサーバ, メール (POP3) アカウント, メール (POP3) パスワード, UVA のアカウント、を上から順に入力
- PC^2 全体の設定を :
- Problems : 名前を問題番号に設定。それ以上は必要なし
- Languages : C, C++, Java という名前の言語を設定するだけ。コンパイラ等の設定は不要。
- あとは放置しておけば勝手にやってくれるはずです
公開するとなったなら、もうちょっとちゃんと書かないとなあ。 (三廻部)
やってること †
- 基本的には PC^2 "Judge" クライアントとして動作
- Submit は Web 経由 (http://acm.uva.es/problemset/submit.php の Form を使って)
- 結果の受信は Mail で
- この際、送ったプログラムと結果の対応をとるために、プログラムにランダムな文字列を (コメントの形で) 付け加え、 "Program Received" のメールを見て Judge ID を取得しています
- Web Scoreboard を見るだけだと対応が確実に対応を取るのが難しいのです。 (特にめちゃくちゃ連続で送られたり、一度 UVAJudge クライアントが落ちて復帰したりすると)