情報オリンピックの「リアル」に迫る
こんにちは!このnoteにおいては、高校時代に面白い活動をしていた方にインタビューをして、その活動の魅力を伝える記事を執筆しています!今回は情報オリンピックに出場されていた、東京大学理科一類2年の「square1001」さんに情報オリンピックの魅力を聞いてみました!
その他の記事はこちらから↓
https://note.com/utbasehighschool/m/ma89ed7d9804b
お忙しい中、インタビューにお答えいただきありがとうございます。
まず、高校時代に残された実績についてお聞かせください!
国際情報オリンピック 2018(日本大会)銀メダル・2020(シンガポール大会)銀メダル
日本情報オリンピック 2017, 2020 銅メダル・2018, 2019 優秀賞
一応数学オリンピックにも出場しましたが、入賞したのは 2019 本選のみです。
情報オリンピックでの活動を通して、得たものはなんですか?
大体三つあります。
一つ目に、情報オリンピックや競技プログラミングの難しい問題では、問題を解く高速な(あるいは効率的な)アルゴリズムを設計する力が問われます。だから例えば、地図上の最短経路を高速に求めたり、オセロなどの強い AI を作ったりといったような、高度で複雑な問題をどうやって(コンピューターを使って)解くかを自分で考えられるようになりました。
二つ目に、情報オリンピックや競技プログラミングでは問題を解くプログラムを実際に書く必要があるため、数百行の複雑なプログラムを1時間くらいで書ける実装力を身につけることができました。
三つ目に、世の中はコンピューターを使って(色々な側面で、色々なアルゴリズムや手法が用いられて)情報処理が行われ、社会が動いている。私は情報オリンピックなどの問題を解くことで、この仕組みを明確にイメージすることができました。
それ以外にも、高校2年生になってからはイベントを開催するなどの活動を行い、プログラミングや情報科学の面白さを伝えることができました。
情報オリンピックに求められる力はどんな力だと考えますか?その理由も教えてください!
まずは、プログラミングを楽しむことです。情報オリンピックでは最初のラウンドからプログラミングをする必要があるからです。
次に、問題を効率的に解こうとする考え方です。コンピューターの計算能力には限界があるため、アルゴリズム(=問題を解く方法)によっては、小さいデータでしか実行できなかったり、大きいデータでも高速に実行できたりと変わるからです(表現を変えれば、プログラミング的思考と言ってもいいかもしれません)。
さらに、アルゴリズムやプログラムをどんどん改善していく力です。他の科学オリンピックとは異なり、情報オリンピックではプログラムの効率によって "部分点" が付けられます。例えば、N ≦ 100 のケースに全部正解すれば 30 点、N ≦ 1000 だと70点、N ≦ 100000だと 100 点、といった感じです。このように1段階ずつ改善していけば、最終的には非常に良い解き方が出来上がっている場合もあるからです。
高校・大学での学びと情報オリンピックでの学びはどう違いますか?
高校での授業は情報技術や情報社会の一般的なことについて学習しますが、情報オリンピックはより実戦的で、実際の問題みたいな感じで解く、効率的な方法を考える、実際にプログラムを書く、といった「問題解決力」に重点を置いたものになっています。
具体的な問題を解く情報オリンピック(や競技プログラミング)と比べて、大学での学びはより抽象的なものであると感じられます。ですので、抽象的な理論を考える力と具体的な問題を考える力を組み合わせると、もっと広い範囲のことが考えられるようになれるのではないかと期待しています(少し曖昧な言葉遣いですが)。
現在の興味分野はどこですか?
中高生の頃からアルゴリズムに興味を持ち続けていますが、最近は特に「グラフアルゴリズム」に興味を持っています。
(補足:グラフは、モノのつながり方を表すネットワークのようなもので、鉄道路線図や SNS のフォロー関係など色々なものがグラフで表せます。グラフアルゴリズムは、最短経路を求める問題や、2 人ペアを最大の数作る「最大マッチング問題」などグラフを使った問題を解く分野です。)
情報オリンピックはどんな人におすすめですか?その理由も教えてください!
正直なところ、全人類におすすめしたいと思っています。
ですが、特におすすめしたいのは、考えさせる問題を解くのが好きな人です。また、情報分野で実際に何かやってみたい人、プログラミングをやってるけど開発以外もやりたいという人、競技プログラミングに興味を持っている人にもおすすめです。
最後に、情報オリンピックに参加を考えている人へ一言お願いします!
少しでも興味を持った人は、過去問(下記の情報オリンピックホームページに載っています)を見てみましょう!「なんか楽しそう」と思った人は、情報オリンピックに挑戦してみてください!
(補足:1次予選レベルの問題は、プログラミングを知っていればイメージしやすいかなと思います。本選レベルの問題は解けなくて当然ですが、とても不思議なことに練習すれば何問か解けるようになったりするものです。)
—---------------------------------
square1001さん、お忙しい中ご協力いただきありがとうございました!
非常に丁寧にお答えいただき、私自身も情報オリンピックに興味を持ちました。
高校の授業とは違った「問題解決力」に重点を置いた活動に皆さんも心惹かれるものがあったのではないでしょうか!
情報オリンピックに興味を持っている方がいれば、ぜひ参加してみてください!
情報オリンピック公式HPはこちら!
今年度の参加募集期間はまだ発表されていないようですので、随時HPをチェックしましょう!
UT-BASE for high schoolでは、東大に関心を持っている高校生・大学受験生の皆さんに向けて以下のような情報発信を行っています。
①公式サイト:科類紹介・学部紹介・東大生インタビューなど、東大生の普段の生活や東大内部の情報についてお伝えしています。
②公式note:等身大の東大生の思い・考えたことを不定期に発信しています。
③公式LINE:おすすめの記事・イベント・プログラムを定期的に紹介します。
ぜひ、他の記事も読んでみてくださいね!LINEへのご登録もお待ちしております!