No project description provided
Project description
Online Judge Verify Helper
なにこれ
競プロライブラリの verify をお手軽に自動化するためのツールです。
使い方
競プロライブラリのリポジトリに設定する
これ読んで: https://kmyk.github.io/online-judge-verify-helper/installer.html
手元で実行する
インストール
$ pip3 install online-judge-verify-helper
verify 自動実行
まず .test.cpp
という拡張子の名前のファイルに #define PROBLEM "https://judge.yosupo.jp/problem/unionfind"
のような形で verify 用問題の URL を書いておきます。このとき、次のコマンドで verify できているかを確認してくれます。
$ oj-verify run
利用できる問題は主に Library Checker の問題と Aizu Online Judge の問題です。 HackerRank の問題もたぶん動きますが保証はしません。 その他サービスについてはテストケースが利用できる形で公開されていないために対応していません。
#include
の自動展開
与えられたファイル中の #include "foo.hpp"
の形の include 文を展開して出力します。
JavaScript で言うところの webpack のような機能です。
以下のように実行します。
$ oj-verify bundle main.cpp
競プロライブラリのディレクトリの外側にいる状態で実行する場合は -I path/to/your/library
のように指定してください。
#pragma once
などの include guard に部分的に対応しています。複数回の include の対象になっているが出力には一度のみ含まれてほしいようなファイルがあれば、その 1 行目に #pragma once
と書いておいてください。
ドキュメント生成
以下のコマンドを実行すると、ドキュメントが生成されます。例: https://kmyk.github.io/online-judge-verify-helper/
$ oj-verify docs
ドキュメント生成時に Doxygen 風のコメントが見つかれば、それらは自動で利用されます。
TeX 記法の数式 (例: $O(N \sum_i A_i)$
) の MathJax による表示にも対応しています。
(TODO: どのようなコメントが認識されるかについてのドキュメントを書く)
Tips
- ライブラリを verify するための問題が見つからないときは他の人のライブラリを参考にするとよいでしょう。online-judge-verify-helper のユーザの一覧は https://github.com/search?q=online-judge-verify-helper+path%3A.github から見ることができます
- ライブラリを verify するための問題がそれでも見つからないときは Library Checker に問題を追加してください
- 高速化したい場合は頑張れば全体で 100 倍速ぐらいにできます: https://kmyk.github.io/online-judge-verify-helper/speedup.html
- GitHub Actions から online-judge-verify-helper を呼び出すといった通常想定される利用法においては MIT License に関する著作権表示は要求されません (詳細)
Authors
- committer: @kmyk (AtCoder: kimiyuki): pip での配布や online-judge-tools などその他の諸々の担当
- committer: @beet-aizu (AtCoder: beet): verify 機能担当
- committer: @tsutaj (AtCoder: Tsuta_J): documents 生成担当
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for online_judge_verify_helper-3.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 331bb44aed97568e290d2e7198b7c9bed776cefd0ee585f3b530c5099360c0d0 |
|
MD5 | 257659f66c6efa21fbf6d28077c6b21e |
|
BLAKE2b-256 | 3a48901aebdde1cd1662cdf51350440f4e97f4b6faf72ea3f126c1682a738b27 |