サンプルケースの自動実行と、ACならソースをクリップボードにコピーするCLIです. 提出はブラウザで行います(Turnstileのため自動提出は不可)。
設定の仕方によって, C++やPythonなど, 様々な言語での環境に対応することができます.
このプロジェクトは開発段階です. 気になる点があったら, issueやpull requestにお願いします!
以下のコマンドでインストールできます
cargo install --git https://github.com/UUGTech/AtCoderNinjaこれで, ac-ninjaコマンドが使えるようになります.
.bashrcなどで,acnなどのエイリアスを用意すると, コンテスト参加中のタイプ数が減って嬉しいです.
alias acn='ac-ninja'以下のコマンドでアンインストールできます
cargo uninstall ac-ninja~/.config/ac-ninja/config.tomlに各種設定を記述します.
設定の詳しい内容はCONFIG.mdを参照してください.
- ログイン
AtCoderNinjaの機能を十分に使うためには, AtCoderにログインする必要があります. 以下のコマンドでログインできます.
ac-ninja loginブラウザでログインして、REVEL_SESSION を貼り付けます。
セッション情報が~/.ac-ninja/session.txtに保存されます.
- ログアウト
ac-ninja logoutのようにすることで, 上記~/.ac-ninija/session.txtは削除され, ログアウトします.
- ログイン状態の確認
ac-ninja login-checkログインCookieが有効かどうかを確認できます.
- サンプルでACならソースをクリップボードにコピーする場合
ac-ninja aac-ninja <problem_id>のように, 問題を指定します.
- クリップボードにコピーせず、ローカルでのみ実行する場合
ac-ninja a -lのように-lオプションをつけることで, クリップボードコピーは行いません.
- サンプルの結果に関わらずコピーする場合
ac-ninja a -fのように-fオプションをつけることで, サンプルの結果がACでなくてもコピーを行います.
これは, 正解が複数あり得る場合などに役立つオプションです.
- 手動の入力で確かめたい場合
ac-ninja a -iのようにすると, サンプルケースではなく, 手動の標準入力で動作を確認することが出来ます. もちろんコピーは行われません.
また、
ac-ninja a -i < ./input.txtのようにすることで, 他のファイルを入力に使うこともできます.