日本選手団 団長 坂部圭哉
日本代表選手 | |||
金メダル | 松尾凛太朗 | 麻布高等学校2年 | 金メダル | 米田優峻 | 筑波大学附属駒場高等学校3年 |
銀メダル | 米田寛峻 | 開成高等学校3年 | |
銀メダル | 星井智仁 | 筑波大学附属駒場高等学校3年 | |
日本選手団役員 | |||
団長 | 坂部圭哉 | 東京大学3年 (IOI 2017 選手) | |
副団長 | 河原井啓 | 東京大学3年 (IOI 2017 選手) | |
随行員 | 岸田陸玖 | 東京工業大学2年 (IOI 2018 特別参加選手) |
IOI は個人戦であり公式データとしての国別順位は存在しない.公表された成績に基づいて算出したところ,メダル獲得数による日本の国別順位は 5 位タイであり,総得点による日本の国別順位は 7 位であった.
競技 1 日目 | 植物の比較 (Comparing Plants) |
スーパーツリーをつなげ (Connecting Supertrees) | |
カーニバルのチケット (Carnival Tickets) | |
競技 2 日目 | ビスケットの袋詰め (Packing Biscuits) |
キノコを数えよう (Counting Mushrooms) | |
ステーション (Stations) |
いずれも数理的思考力が問われる良問である.各課題はいくつかの小課題に分割されている.小課題の中には,単純な実装で得点が得られるものから,高度なアルゴリズムを実装しないと得点が得られないものまで含まれている.従って 1 つの課題を丸ごと落として 0 点になってしまう可能性は少ないが,満点を取るのは難しい.
また,すべての問題の満点の配点は同じため,比較的簡単な問題では満点を取りたいところであるが,他のプログラミングコンテストと違い,選手はコンテスト中に順位表を見ることはできない.このため,選手は問題の難易度も一人で判断し,コンテスト中の時間配分を考えなくてはいけない.
IOI はプログラムの作成技術を競う大会ではない.技術力があるに越したことはないが,それよりも IOI で重視されるのは数理的な思考力・洞察力である.競技では課題の本質を見抜く力が問われ,(気づけばそこまで難しくはないものの) 一見して何をしたらいいか分かりづらいような問題も出題された.
(1) 競技実施方式 : 本年はオンラインでの開催ということで,選手は各国内から競技に参加した.各国で準備した PC 上で配布された仮想マシンを動作させるという方式で行われたため,ハードウェアの性能は国によって異なったかもしれないが,ソフトウェアの環境はすべての選手で統一された.
すべての国で同時に競技が実施され,2 日とも日本時間では 20時 - 25時 の 5 時間であった.深夜まで全力を尽くした選手たちに敬意を払いたい.
例年公開されていたリアルタイムのスコアボードは,今年は不正行為防止を主目的として,各日競技終了まで公開されなかった.
(2) 競技規則の変更 : 競技規則の昨年からの大きな変更は無かった.
(3) 問題形式 : 去年に引き続き,IOI 2020 で出題された課題の形式は,与えられたデータを処理する関数(プロシージャ)を実装したソースファイルを提出する方式 (プロシージャ方式) であった.出力ファイルのみを提出する形式の問題は出題されなかったが,オンライン開催であり使用 PC の性能が国によって異なるためだろう.
提出されたソースファイルは競技システム上ですぐにコンパイル・実行・評価される.競技参加者にフィードバックが返され,自分の得点を知ることができる (現在の競技規則では,すべての提出に対して完全なフィードバックがあることが明記されている).満点でなかった場合は,どの小課題で失点したかを知ることができる.
(4) 競技システム : 競技時間中,選手には競技用 PC が 1 人 1 台与えられた.選手の PC には開発環境と,競技システムにアクセスするためのウェブブラウザがインストールされていた.また VPN によりコンテストのネットワークに接続されており,主催者側から PC の状態を監視・制御することができるようになっていた.技術委員の努力に深く感謝したい.
競技システムは,去年の IOI と同様に CMS が用いられた.インターフェースは簡潔で,また JOI 本選や春合宿等でも使用していることもあり,その使い方については選手が自ずと理解できたようであった.
(5) 翻訳 : 競技日当日の昼間に,日本選手団役員により問題文の翻訳が行われた.
今年の翻訳システムも従来通り Markdown 形式のもので,すべての編集がサーバー上に保存され,使いやすいものであった.問題文の修正要求と変更連絡は,Keybase というチャットツールを用いて行われ,発言の記録がすべて残るため議論に参加しやすい仕組みだった.