読者です 読者をやめる 読者になる 読者になる

プログラミングコンテストで便利なIntelliJプラグイン CHelperを使う

テストしてないってそれ

プログラミングコンテストで解答が毎回正しいかチェックするためにいちいち実行、サンプル入力、目視確認とか死ぬほど面倒くさいですよね?
僕は面倒臭いです。
でもUnitTest書くのはそれの比にならないくらい面倒くさいですよね?
僕は面倒臭いです。
でもテストしないのはライオンのようなものに襲われる恐怖がありますよね?

みんなあんまりどうやってチェックしてるのか知らないのですごい人を参考にすることにしましょう。
なんか便利そうなの使ってますね。
これがCHelperです。
www.youtube.com

インストール

インストールは簡単。
f:id:takashima0411:20160802155634p:plain

[Browse Repository]で検索してインストール。
これだけ。

ツールバーに追加

ツールバーで右クリックしてコンテキストメニューから「Customize Menus and Toolbars...」を選択。
「Main Toolbar」内の、「Tasks Toolbar」あたりを選んで、右の「Add After...」を選択。
f:id:takashima0411:20160802160054p:plain

「Plug-ins」の中の「CHelper」を開いて、中のアイコンを選択状態にしてOK
f:id:takashima0411:20160802160318p:plain
f:id:takashima0411:20160802160321p:plain

これで準備OKです。

使い方

こんな感じのアイコンが追加されていると思うんで、まずは初期設定
f:id:takashima0411:20160802160757p:plain

歯車のアイコンを選ぶとこんな感じのがでてきます。
とりあえず深く考えず画像のような感じにすればいいかと思います。
f:id:takashima0411:20160802162734p:plain

ここではAtCoderBeginnerContest#042のA問題をサンプルに使ってみましょう。
まずはタスクを追加します。
ツールバーの緑の「+」アイコンを選択。
f:id:takashima0411:20160802161705p:plain

「Edit tests」を選択。
f:id:takashima0411:20160802161759p:plain

「New」を選択。
InputとOutputにそれぞれ予め用意されているサンプルを入力しましょう。
f:id:takashima0411:20160802161955p:plain
f:id:takashima0411:20160802161956p:plain

そしたらOKで終了。

するとこんな感じのあやしすぎるクラスが作られます。
f:id:takashima0411:20160802162840p:plain

このsolveメソッドの中にコードを書いていきます。
今回はこんな感じで。
注意としては入出力はsolveの引数でもらってきてるやつを使うってことくらいです。
f:id:takashima0411:20160802164652p:plain

なんか動きそうな気がしますね。
じゃあチェックしましょう。
これを実行します。
f:id:takashima0411:20160802163312p:plain

おや?なんだか怒られていますね。
f:id:takashima0411:20160802164748p:plain

この問題では出力はすべて大文字でしたね。
ちゃんと問題を見ろこのチンパンが!!!!

修正して実行しなおすとこんな感じ。
f:id:takashima0411:20160802164856p:plain

うまく行ったようです。
さて、Taskとかいうクラス作ったうえsolveとかいうメソッドに問題解いちゃったけど提出はどうすればいいのか?
ツールバーのコレをクリックするとクリップボードに提出用のコードがコピーされます。めっちゃ便利!
f:id:takashima0411:20160802165032p:plain

あとはコレを貼り付けて、提出して見守るだけです!

終わり

以上でCHelperの使い方の説明は終わりです。
これで今夜からライオンのようなものに襲われる夢を見ずに眠る事ができそうですね。

参考:
stackoverflow.com
codeforces.com