(2018年7月掲載)
■プログラミングを始めたきっかけと、情報オリンピックに出場しようと思ったきっかけを教えてください。
プログラミングのきっかけは、中学の時、学校のロボット部に入ったことでした。プログラミングをしてみたいと思ったわけではなく、「なんだか面白そうだな」という動機で入ったのですが、入ってから、ロボットを制御するためにはプログラミングをする必要があることがわかったため、プログラミングを始めました。
情報オリンピックに参加しようと思ったのは、確か中学3年生くらいだったと思います。数学オリンピックをやっていた学校の友人から、「情報オリンピックというものがあって、頭を使うプログラミングのコンテストだ。参加してみてはどうか」といった旨のことを言われ、興味を持ちました。過去問を見ると面白そうだったので、早速その年に参加しました。パソコンがあれば、家からでも無料で参加することができる等、参加のハードルが低かったことも良かったと思います。
■ふだんの生活の中で、プログラミングのトレーニングのために何か心掛けていることはありますか。
高校生の頃は、情報オリンピック以外にも、様々な競技プログラミングの大会がインターネット上で開催されているので、それに参加することで、プログラミングの練習をしていました。また、よく使われるアルゴリズムがたくさんあり、それは自分では思いつけないので、本を買って勉強しました。本を読んで新しいアルゴリズムを学ぶ時に、それをプログラムに書く練習もすると、アルゴリズムを覚えやすくなる上、プログラムを書く練習にもなるので、良いと思います。また、最新のアルゴリズムやテクニックなどは、本には載っていないので、インターネットで調べたりして知識をつけたりもしました。
さらに、情報オリンピックの本選などでは、自分と同じく競技プログラミングをしている高校生たちとたくさん出会えます。そういう場で話をすることで、刺激を受けたり、良い本の情報を手に入れたりすることが多かった気がします。
■世界の強豪を押さえて銀メダルを取ることができたのは、どこがポイントだったと思いますか。日頃のどんなトレーニングや心掛けが役立ったと思いますか。
まず、当日焦りすぎたりすることなく、適度な緊張感をもって試験を受けられたことが大きかったと思います。それから頭がよく回るように、テスト前日などは、いつもよりしっかり寝るようにしていました。
ふだんの練習がどれほど役に立ったのかは自分でもよくわかりませんが、練習によって着実に実力が付いていたのは確かだと思います。また、テストの難易度だったり、パソコンを使うなど形式が少し特殊だったりするので、予め国内選抜等でその難易度・形式に慣れていたことは大きかったと思います。
■坂部さんは化学オリンピックや地学オリンピックでもすばらしい成績をおさめていますが、それぞれのオリンピックの共通点があるとしたら、どんなところでしょうか。
抽象的な話になってしまいますが、これらのオリンピックの共通点としては、すでにわかっている知識を組み合わせて、自分の頭で考えて、自分の納得できる答えを作り出すことだと考えています。知識を覚えるだけでは不十分で、でも基礎となる知識くらいは持っていないといけない、そういったところではないでしょうか。
でも、最も重要な共通点は、「面白いと思えること」だったように思います。どれも高校ではあまり扱わないようなことが必要になってくるのですが、そういう深いことを自ら学ぶことが面白かったのを覚えています。やっぱり面白いと思えないとなかなか続かないので。
それから、これは共通点ではありませんが、将来例えば研究をすること等になった時に、様々な分野の知識がふと役立ったりすることがあるのではないかと感じています。わかりやすい例としては、化学の研究をする時に、コンピュータでシミュレーションする、などのことが挙げられます。
■「プログラミングの醍醐味」はどんなところですか。
プログラミングを学ぶことで、自分のできることが広がったと実感できたことが、純粋に嬉しかったです。また、人間にはとても大変な計算を、コンピュータがすぐに正確にやってくれる点が素晴らしいと思っています。複雑な計算の答えが瞬時に表示されるのを見ると、今でもちょっとした感動を覚えます。
競技プログラミングは、一種ゲームのような感覚で楽しむことができると個人的には思っています。例えば、問題が解けるとすぐにスコアが上がり、嬉しくなるのは、ゲームに通じる点があると感じています。
■将来の進路・夢を教えてください。
科学系の知識を活かした仕事をしたいと考えていますが、具体的には決められていません。
■これからプログラミングを学ぶ初心者の方へ、アドバイスやメッセージをお願いします。
プログラミングは、最初はとっつきにくく、難しいと感じると思います。なぜなら、最初にたくさんのことを覚えなければいけないからです。しかし、一旦覚えると、自由自在にプログラムを書くことができるようになります。自分の好きなようにプログラムが書けて、パソコンでできることが広がることは、とても楽しいことです。だから、プログラミングを始めたばかりの時に「覚えることが多くて大変だな」と思っても、数週間だけ我慢してください。そのうち「面白い」と思えるようになるはずです。また、周りがみんなやっていなかったり、学校の授業が少なかったりする時でも、自分で本を買ったりして、自分でどんどん先に進んでしまって大丈夫です。