競技プログラミング (AtCoder, yukicoderなど) の問題をNimで解くためのライブラリおよび online-judge-tools 実行用シェルスクリプト
このライブラリには一部AIを利用して作成されたコードが含まれます。コンテストでの使用はAtCoder側のルールに違反しないようご注意ください。
インストールやスクリプトの実行には以下のツールが必要です。 あらかじめ各ソフトウェアのガイドに従ってインストールしてください。
- Nim (1.6.14)
- online-judge-tools
以下のコマンドでインストールしてください。
git clone https://github.com/kemuniku/cplib.git
cd cplib
nimble install -y問題を解くときは、クローンしたディレクトリ内に Main.nim を作成し、解答コードを書きます。
公開されているテストケースに対して実行し結果を確かめるには以下のようにします。
./dl /url/of/problem
nim cpp -o:a.out Main.nim
oj t解答を提出するには sub コマンドを使います。
./subライブラリに関するバグ報告や提案などは、Issue, Pull Request を立ててください。
回帰テストは src/verify のNim verifyファイル(*_test.nim)に追加してください。
既存の verify.yml がNim 1.6.20 / 2.2.4で実行します。
CRTの実行手順は docs/math/crt.md を参照してください。
expanderの回帰は次のコマンドで実行できます。展開・コンパイルの検査は
verifyのコンパイル時に行い、生成物は一時ディレクトリへ保存します。
nim cpp --nimcache:/tmp/expander-verify-cache -o:/tmp/expander-verify -r src/verify/tools/expander_test.nim