仮のブログ

仮です

TUPC2023 開催記

はじめに

 東北大学プログラミングコンテスト2023を開催した. この記事はその開催記録と感想である.

atcoder.jp

コンテスト概要

 東北大学プログラミングコンテスト(TUPC)は東北大学プログラミングサークルPuzzleknotが主催するコンテストで, 今年で三回目. 第一回はAOJ上で, 第二&三回はAtCoder上で開催させていただいている. また, 第二回以降は東北大学キャンパス内に会場を設け, オンサイトコンテストも開催した.

準備について

 準備のスケジュールは以下の通り.

2023年7月頃

 TUPC2023というdiscordサーバーが生える. これ以降, 各自が作問をある程度の形まで生やす→discordでチャンネルを作ってTesterを募集→魔改造や洗練といった流れで各問題を作っていく.
問題の管理はGithub&rimeで行い, それとは別にスプレッドシートで各問題の進捗状況を管理した.
なお, 問題作成自体はこれ以前にもパラパラとは行われていた. 例えば, Do Not Turn Back (TUPC2023-N) に関しては5月頃には解法含めて問題が生えていた.

2023年10月頃

 この時点で17問の問題が提案されており, 一旦各問題の準備を進める流れとなった. 実際にはこの後7問+簡単枠数問が新規に提案された.

2023年12月頃

 問題の選定, AtCoderと話を付ける, 大学と話をして教室を借りる等のコンテスト及びイベント全体の内容の骨組みはこの月に一気に進んだ.

2024年1月頃

 オンサイト募集を開始したり, AtCoder上に問題をアップしたりした.
また, 1月末には部内の青~黄コーダー3人に声を掛けて, チーム戦を想定してセットを走ってもらった. 色々な意味で5時間が暇にならないかや部分点の付き方は適切かなどを見てもらった.
また, この時期にはWriter陣がこれまで見ていなかった問題にも目を通し始め, それによって様々な問題で魔改造が起こった.

2023年2月頃

 全体Testerのhenoさんとkotasugameさんに問題を解いてもらい, 指摘事項を修正という事をした.

2023年3月頃

 validatorの最終check等をして, コンテスト本番を迎えた.

今年から導入して良かったもの

  • チームTester: サークル内で, 作問作業に関わっていない3人に頼んで, 本番さながらに走ってもらい, 部分点の付き方が適切か等を見てもらった. この作業はより広いレート帯の人が暇にならないコンテストの実現に大事っぽい気がした.
  • チーム作問: ある程度問題が固まった時点でのTester募集とは別に, 原案や解法の途中経過等を気軽に投げられるチャンネルをdiscordに作った. そこそこ機能したし, 何より楽しい.

問題の感想

以下は各問題のネタバレや解法を大いに含みます.

B: 012 Grid (Writer)

 Writer枠1. この問題は, LGV公式を使う問題を作りたいという気持ちから始まった. そこから1か月位ひたすらLGVっぽい原案を生やし, 解けずを繰り返してやっと綺麗かつまともに解けたのがこの問題である.
 解くのも一筋縄でいったわけでは無く, まず右上左下1固定verのみが解け, これを設定に付すとわざとらしすぎるために一旦没にしていた. その後, 一般の場合でも解けることに気づき, さらには最終的に畳み込みで準線形まで高速化に成功したため出題に至れた.
 結果としても難しい数え上げ枠をはれたので良かったと思う. (簡単なのに順位表で見つかってなくてビックリという言及も見かけたけどマジ?)
 実はOEISを探し回るとヒントや大ヒントが得られてしまうのだが, コンテスト中にはあまりバレなかったようで良かった.

F: Hotel (Writer)

 Writer枠2. 昨年のTUPC2022が上から下までAdhocな感じだったので, 今年は一問くらいABClikeな問題を作ろうとして作った問題.
 また, ABC-like作問と相性が良さそうということで, 題材を決めてから作問という流れを初めてしてみた.
 題材候補として数学の辞典や資料をパラパラして, 題材自体が比較的わかりやすく+問題が作りやすそうなものを選んだら今回のHilbertの無限ホテルに行き着いた.
 概ね意図した通りの問題が完成し, 実際コンテスト上でもそのように機能してくれたというのが自己評価である.

その他の問題

 Testerをしたりいくつかの問題では解法や別解を提案した. それぞれの問題の詳細は恐らく各writerから語られるであろうのでそちらに譲ることとする.

 以下Writerによる開催記. (2024/03/20現在. 観測次第随時更新)

おわりに

 快くサイトを利用させていただいたAtCoderの皆様, 昨年に引き続き快く全体テスターを引き受けていただいたhenoさん, コンテストに参加して盛り上げていただいた皆様, ありがとうございました!!
 来年もTUPC2024の開催を目指しています. その折には是非ご参加ください!!