先日ゆるふわ競技プログラミングオンサイト at FORCIA #2 ゴリラの挑戦状という32人規模のオンサイトコンテストを開催したmatsu7874です。
有志コン開くのは良いけど、コンテストに必要な準備をそもそも知らずにコンテスト開催している人が多い気がするので、ちゃんと調べてから開催してね!
— chokudai(高橋 直大)🌸🍆🍡 (@chokudai) October 14, 2019
(といいつつ、その辺の資料ってどこに揃ってるのかな)
というchokudaiさんのツイートを見たので、ゆるふわ競技プログラミングオンサイトについて、コンテスト準備の流れを書こうと思います。主にHackerRankでの開催を念頭においています。
ゆるふわ競技プログラミングオンサイト第1回は2019/02/09に開催していて、その時の記事はこちら。 また、今回のコンテストに関して、作問部分の様子はprd_xxxさんが下記のブログで書いてくれているので、ぜひ読んでください。
3ヶ月前
- 日程を決める
- 参加者層が重なる他のイベントと被らないように調査する
- 会場スポンサーと懇親会スポンサーを探す
- 私の場合は自社でやる承認をもらう
- 想定参加者数・参加者層(社会人・学生)とざっくりとしたタイムテーブルがあるとよい
- 告知を出す(connpassページを公開)
- 初回は先着順にしてみた。特定のクラスタの参加者が多かったため、次回はある程度早い人の中で抽選とした。
- 2回目は告知から3日後に抽選としてみた。2日目には32人の枠を超える応募があった。
- GitHubにプライベートリポジトリを作る
- CIの設定をする
2ヶ月前
- 作問していく
- 用意するもの
- 問題
- タイトル
- 問題文
- 時間・メモリ制限
- 対象言語を考慮(HackerRankの言語一覧)
- 入力形式
- 制約
- 出力形式
- サンプルケース
- 入力例
- 出力例
- 解説
- 想定解法
- テストケースのgenerator
- テストケースのvalidator
- testlibを使うと余分な改行やスペースも検証しやすい。
- 問題
- チェックリストが参考になる
- 競プロwriterのための準備チェックリスト: notさん
- 作問用チェックリスト: yukicoder
- Rimeを使う場合
- 用意するもの
1ヶ月前
- テスターをお願いする
- 私は青なので、自分より強くたくさんのコンテストに参加している人にお願いしています。
当月
- 解説を用意する
- HackerRankに問題を登録する
- まあまあ時間がかかり、集中力の必要な作業なので、時間にゆとりを持ってやるべし。
- Contestを作って、ModeratorsにWriter,Testerを登録
- Manage ChallengesからChallengeを作成
- Contestに"Add Challenge"
- 全てのテストケースに想定解を返した場合のみACとしたい場合は、Binaryにチェックをつける。つけない場合は想定解と一致したテストケース数に応じた点数が与えられる。
- ChallengeのModeratorsにもWriter,Testerを登録しておくと、いざというときに対応しやすい。
- 問題のDetailsでLanguageをEnglishから変更すると、作業忘れによってある言語では修正が反映されないという事故が起こるので気をつける(複数言語用意しないならEnglish限定で良い)
- Test CasesタブでSampleにチェックを入れておくと、提出前に動作確認できる機能がある
- コンテスト名が数字のみだとコンテストが開催できない不具合があるっぽい?
- まあまあ時間がかかり、集中力の必要な作業なので、時間にゆとりを持ってやるべし。
- 名札を用意する
- 頑張って作る
当日
- スタッフが最低二人は必要と思う
- 会場設営
- Wifi
- 電源
- テーブル・椅子
- 名札
- お菓子・飲み物を用意する
- ピザ
- 学生は人数/3くらいが丁度いい?
- 人数/4だと秒で消える
- 取るなら懇親会直前がいいよ
- せっかくのピザが冷めてしまうため
- 学生は人数/3くらいが丁度いい?
- コンテスト中はClar対応をする
- 片付け
- 懇親会の片付けは地味に大変
ざっとこんな感じでしょうか。今後、有志コンテストを開く方の参考になれば幸いです。
技術広報チームのリーダーになりました
最近、技術広報チームのリーダーになりました。技術イベントの会場提供・懇親会提供などやって行きたいと思っています。
作問したのでオンサイトイベントにしたい!という方がいらっしゃいましたら、Twitter/@matsu7874などで連絡いただけたら嬉しいです。
新宿駅直結なのでアクセスがいいオフィスで、机ありなら32人くらい、椅子だけなら60人くらい(詰めれば100人)入れる会議室があります。