AtCoder Problemsで毎日開催のバーチャルコンテストを立てやすくするためのツールです。
指定した範囲のDifficultyの問題セットを作って自動で追加します。
config.py
のcontest_sets
にコンテストの設定を書き込みます。
複数のコンテストセットを登録すれば実行時にどちらを選ぶか聞かれるようになります。
プロパティは以下のようになっています。
名前 | 値 |
---|---|
name | コンテストセットの名前 |
title | タイトル(strftimeが通されます) |
memo | コンテストのコメント |
everyday_start_time | 毎日何時に開始するか |
duration_second | 何秒間のコンテストか |
penalty_second | ペナルティは何秒か |
problem_infos | 抽選される問題の条件の配列 |
problem_infosの中身は以下の形式をしたオブジェクトの配列になります。
名前 | 値 |
---|---|
difficulty_range | Diffの最小値・最大値のタプル |
point | 点数 |
include_experimental | 試験管Diffを含むか |
duplicate_remove_days | 直近何日の問題を抽選から除外するか |
main.py
を実行するとconfigの通りにバチャが立ちます。
$ python3 main.py
作成するコンテストの開催日を入力してください(YYYY-MM-DD): 2023-02-23
AtCoder Problemsのトークンを入力してください: gho_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
コンテストを作成しました: https://kenkoooo.com/atcoder/#/contest/show/2266400f-18f4-44f7-9402-8a8c1fce55ce
コンテストの問題を設定しました
完了しました
初回は開催日が聞かれるので入力します。 トークンはAtCoder Problemsにログインしたブラウザに保存されているCookieから確認してコピペします。
$ python3 main.py
次回のコンテストは2023-02-24に設定されています
変更しますか?(y/n): n
AtCoder Problemsのトークンを入力してください: gho_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
コンテストを作成しました: https://kenkoooo.com/atcoder/#/contest/show/2266400f-18f4-44f7-9402-8a8c1fce55ce
コンテストの問題を設定しました
完了しました
前回2023-02-23のコンテストを立てれば、翌日である2023-02-24が提案されます。
変更しますか?のあとy
を入力すれば設定し直すこともできます。