STAGE:0」はテレビ東京と電通が開催する、同じ高校内のチームで日本一を争う高校対抗eスポーツ大会。「STAGE:0 競技プログラミング高校生大会 powered by AtCoder」は、この祭典の新たな試みとして、8月7日に開催されます。狙いは、eスポーツのすそ野を広げ、「STAGE:0」を新たな才能を発掘するための舞台として、より発展させることです。

運営を担うのが、競技プログラミングコンテストを行うサービスを展開する企業のAtCoderです。代表の高橋直大さんに取材しました。

大事なのは、ゲーム感覚で楽しむこと

──競技プログラミングとは?

ある問いに対し、どれだけ早く最適な答えをプログラミングで導き出せるか、あるいは時間内にどれだけ多くの答えを出せるかを競う競技です。

「こうしたらうまくいくのでは?」という仮説を立て、検証してダメだったら、「じゃぁ、これは?」と新たな仮説を立て検証する。このPDCAサイクルを繰り返すことになります。論理的思考能力や、試行錯誤する能力が磨かれます。これは、プログラマーだけでなく、将来社会に出た時に誰もが求められる能力です。

競技プログラミングでは、論理的思考能力が問われます

──自分の能力を磨く勉強にもなりますね。子どもの保護者も喜びそうです。

もちろん、本気でプログラミングに取り組むのであれば、覚えることもたくさん出てくるし、勉強的な要素は出てきます。でも、それはゲームを本気で勝とうと思ったときも同じですから。

ただ、はじめる前から「勉強」と思い込むのはすごく損しちゃうかなと思います。

前提として、プログラミングは楽しいものです。まずはゲーム感覚で気軽にやってほしい、という思いはかなり強くありますね。

その面白さにはまった結果として、論理的思考力のような社会に求められる力が磨かれるのが、一番よいですから。

──STAGE:0の中で開かれるわけですが、競技プログラミングはeスポーツでしょうか?

僕はそう思っています。ほかの参加者と競争するという点では、一般的なスポーツと変わりませんから。

競技プログラミングをeスポーツとして再定義することによって、「eスポーツは教育的な価値もあるものだ」ということが、広く認識してもらえるきっかけになればと思います。

1問4時間 仮説検証繰り返し、最適解を求める

──今大会、参加者は具体的に何を競うのでしょうか?

出題されるのは1問。制限時間は4時間です。パズルゲームのような問題を解くためのプログラミングを組み、そのできの良し悪しによって得点がつけれます。

ビジネスのIT開発とは違い、ロジックのみを考えればいいので、アルゴリズム設計に集中できます。「モノを作る」と言うよりは、研究開発にちょっと近い部分がありますね。

競技プログラミングの問題例

──参加する高校生たちには、どのような心構えが求められますか?

自分が立てた仮説がうまくいかなくても、時間いっぱい使ってやりきることです。

競技プログラミングでは、ひとつの数字を変えるだけで、大きく結果が変わることがありえます。例えば、625万点を獲得しているプログラムがあるんですが、そのうちの数字をひとつ、4から3に書き換えただけで、得点は40万点に変化します。最後まで諦めずに、最適解を探し続けることで、パッとアイデアが頭に浮かび、より良いプログラミングを組める可能性があります。

あと、今大会は4時間と短時間です。やることをちゃんと整理し、優先順位をつける意識も必要となります。

──どんな高校生に参加してほしいですか?

競技プログラミングは、プログラミングの基礎知識さえあれば挑戦できます。ですから、「今の自分の力を試してみよう」くらいな感じで、怖がらずに参加してほしいです。

野球をけがでやめ、プログラミングの面白さにはまった

AtCoderを運営する⾼橋直⼤さん

──高橋さんご自身の競技プログラミングの腕前は?

高校2年生のとき、野球部に入っていたんですが、肘を壊してしまいました。やることがなくなったので、パソコン部に入ったのが、競技プログラミングとの出会いでした。

国内のコンテストの出場したら、わりとよい結果が出て、「向いているな」と思ってしまったんですよね。その後は受験勉強そっち抜けで、競技プログラミングにはまってしまいました。腕前としては、大学生のとき、マイクロソフト主催の世界大会で3位となりました。

──AtCoderを起業した狙いは?

「プログラミング、めちゃめちゃ楽しいな!」ってずっと感じていました。ただ、コンテストは海外のものが多く、日本で開かれるのはごく少数でした。国内のプログラミング初心者にとってハードルが高かった。「だったら、日本で競技プログラミングを広めるために、気軽に参加できるコンテストを開こう」と思い、友人とともに2012年にAtCoderを起業しました。

今回、STAGE:0で大会を開かせてもらえるのは、競技プログラミングの魅力や、eスポーツの新たな価値を発信するための絶好の機会だと思っています。一人でも多くの高校生に参加してほしいなと思っています。

(前嶋みどり)

【大会概要】

実施日時:8月7日(土)16:00〜20:00
エントリー期間:〜8月7日(土)19:59
参加人数: 1〜3名(個人参加またはチーム参加)
参加資格:日本国内在住の高校生・定時制高校生・高等専門学校生・通信高校生。生年月日が2003年4月2日~2006年4月1日であること。チームを組む場合(2名もしくは3名で参加する場合)は、メンバー全員が同一高校。
参加方法ユーザ登録ページよりユーザ登録が必要。 ログイン後にトップページ に上部に表示される参加ボタンを押すことで参加できます。