Rustで競プロがやりたい(4)

前回は cargo-atcoder を入れたが、Rust を使っている人から cargo-compete を勧められた。

github.com

将来的には自分に合ったものを使いたいが、今はとりあえずおすすめされた cargo-compete を使い進めてみたい。 前回入れた cargo-atcoder を消してみる。 cargo uninstall cargo-atcoder で簡単に消せた。

こんどは cargo-compete を入れる。

入れ終わったら cargo compete init atcoder で初期設定。 そして何か聞かれたのでとりあえずの 2 で色々ファイルが作られた。

cargo compete login atcoder でログインを済ませる。

準備ができたので、問題の取得を行ってみる。 数が多すぎてもあれなので、ABC001 からやってみる。 コンテストにはURLがあり、問題を取得するには contests の後ろにある文字列が必要である。

今回は abc001 なので、cargo compete new abc001 になる

こうしてできたわけだが、初期のコードがこれだけしか書かれていない。

compete.toml というファイルが作られており、その中に template という項目があるので、そこを変更することで初期のコードに反映される。 src = は残すこと。

ついでに下の方に導入される package 一覧があるのだが、その proconio の version が低かったのでそれも上げておいた。

これでコンテストを読み込むとうまく反映された。

何も書いていないが、とりあえず cargo compete test a で A 問題のテストをしてみる。 がエラーが起きる。

compete.toml の test 項目の toolchain を stable にすると通るようになった。

テスト結果も表示されるようになった。

一旦区切るためにここまで。