見出し画像

Atcoderの解答チェックをパパっと行うツールを作ってみた

最近、アルゴリズムの勉強を兼ねて、Atcoderの過去問を解いている。
そんな中、過去問を解いていてめんどくさいなぁと感じるのは、自分のコードが正しいのか確認する作業。

そんなめんどくささを解消しようと思って、パパっと解答のコードが正しいのかをチェックするツールを作ってみた。

今までは、以下のような流れで問題を解いていた。

1. 問題文読む
2. 解答を作成する
3. 入力例をコピペし、解答コードに渡して実行する
4. 出力と出力例が正しいかを確認する
5. 提出する

この作業の中でも、入出力例を用いて解答が正しいかを確認する作業がめんどくさいなぁと。

なので、めんどくさいことは自動化してしまおうってことで、コマンドラインツールを作成してみた。
作成したツールは、自動でネット上から指定したコンテストの入出力例を取得して、解答コードを実行し正しいかを確認してくれる。

使い方は簡単で、以下のような形式で実行するだけ。

# ABC001 A の解答チェック
$ atchk abc001a go run answer.go
Check ABC001A

- Execute Sample 1 ... SUCCESS
- Execute Sample 2 ... SUCCESS
- Execute Sample 3 ... SUCCESS

Your code is OK!!!

上記の例は、Go言語の解答コードを対象にチェックしているけども、PythonでもバイナリファイルでもOK!
コマンドラインから実行可能でさえあれば解答の言語は問わないし結構便利なツールになったと思う。

久々にツールを作ってみたけど、やっぱり何か作るのは楽しいね。

まだいろいろと機能を追加する余地があるから、これからも少しづつ追加していこうかな。

この記事が気に入ったらサポートをしてみませんか?