@nodchip さんのスクリプトが素晴らしい、気がする
いろいろ探してみたところ良い感じのものが見つかりました。
それが @nodchip さん作で、以下の記事から取得できるスクリプト。- オンラインジャッジ補助スクリプト - nodchipの日記
PKUとCodeforces用の補助スクリプトを過去に公開したのだが、
一つのスクリプトで両方に対応したいと考えて統合してみた。
さらに、M-JudgeとAOJにも対応してみた。
@nodchip さんのスクリプトは、とっても便利な気がするので実際に動作確認をしてみることにしました。
@nodchip さんのスクリプトって、どんな感じなの?
このスクリプトは、以下の5つのオンラインジャッジに対応していているそうだ。
機能としては、- サンプル入出力のダウンロード&テスト実行
- テンプレートファイルのコピー
- ソースコードのサブミット
ができるらしいです。なるほど。。
これは、神のようなスクリプトじゃありませんか。
スクリプトを貼ってある記事には、他に細かいことが書いていないです。
なので詳しくはコードを読むか、実行してみてUsage を見るしか無さそう。
コードの動作を確認してみた
スクリプトに「ojck.py」と名付けて保存したのですが、
実行した結果、そのままでは動作しませんでした。僕の MacBook に入っていた Python は 2.5系だったので、json が無かったです。
2.6 系は標準で JSON 対応をしてるみたいなのですが 2.5 系は違うみたい。
2.6系の Python をインストール & コード書き換え
2.5 系でも使えるJSONモジュールに「simplejson」というのがあるそうなので、それを使うことで 2.5系でもいけるかなと思いましたが、他にもエラーが出てきます。そのエラーについては、多くのコミュニティで「それが出るなら、もう2.6にすればいいじゃん」と結論を出しているエラーなので、僕も2.6系をインストールすることにしました。
以下のコマンドを入力したら Python 2.6 が入りました。
sudo port selfupdate sudo port install python26 sudo python_select python26
Mac Ports でインストールした python は、「/opt/local/bin/python」に入っています。確認すると以下のとおり。
!doctype>