国際情報オリンピック
個人得点世界一の覇者は、国際情報オリンピック4年連続&国際数学オリンピック2年連続金メダル!
高谷悠太さん 東京大学教養学部理科I類1年(出場時:開成高校3年)
■プログラミングを始めたきっかけと、情報オリンピックに出場しようと思ったきっかけを教えてください。
僕は中学受験の頃から算数が好きだったので、自然な流れで数学研究部に入りました。その部活の先輩方が情報オリンピックに参加していたので、入ったばかりですが中学1年生の夏休み明けごろから参加してみようと思い、プログラミングを始めました。
■ふだんの生活の中で、プログラミングのトレーニングのために何か心掛けていることはありますか。
特にありませんが、ふだんからパソコンを使うようにすると、タイピングが速くなって役に立つかもしれません。
■世界の強豪を押さえて優勝できたのは、どこがポイントだったと思いますか。日頃のどんなトレーニングや心掛けが役立ったと思いますか。
前年の国際大会でその前の年よりも悪い成績を取ってしまったので、最後の年こそは、と気持ちを強く持って練習を積むことができたのが大きいと思います。また、多くの問題に触れることで、本番でも似たような問題を思い出すことができたのが大きかったと思います。
■高谷さんは数学オリンピックでも金メダルを取られていますが、数学とプログラミングの2つのオリンピックの共通点や相違点はどんなところでしょうか。
当たり前ですが、情報オリンピックでは「問題を解くために、どのようにプログラムを書くか」ということが一番大事で、このステップでは数学オリンピックと似たような頭の使い方をすることになります。ですから、この二つの大会は大変似ていると思います。しかし、情報オリンピックの方が学校等で習わない分、個人での練習が効いてくると思います。
■「プログラミングの醍醐味」はどんなところですか。
先ほども述べましたが、「問題を解くためにどのようにプログラムを書くか」を考えるところだと思います。ただただ言われたようにプログラムを書くだけでは面白くないと思うので。
■将来の進路・夢を教えてください。
僕は大学では数学科に進学予定で、研究職に就くことを目標にしています。ですから、最近はあまりプログラミングをしてはいませんが、別の道で成果を挙げられるよう頑張っていきたいと思います。
■これからプログラミングを学ぶ初学者の方へ、アドバイスやメッセージをお願いします。
情報オリンピックなどの過去の問題をたくさん解いて慣れていきましょう。最初は思うようにコードを書けなかったり、バグを埋めてしまったりとつらいこともあるかもしれません。しかし、実際に問題を解けた時の喜びは大きいと思いますし、挫けないことが大切だと思います。ただ、みんながみんな楽しめるわけではないので、向いていないと思ったら無理にやらなくてもよいと思います。
今まで全くプログラミングをやったことがない人は、とりあえず始めてみるのが一番だと思います。意外と何も知らない状態からでも始められるものです。「入門書なのにこんなに分厚い!」なんてこともあると思いますが、全部読む必要はないですし、必要になったら参照すればいいです。まずは怖がらずにやってみると、楽しめると思います。
■プログラミングを授業で教える時に、どんな工夫をすれば生徒が興味を持ったり、逆についていけなくて困ったりすることなく学べると思いますか。高谷さんだったらどうすると思うか、という観点で教えてください。
私が一番懸念するのは、指導する人が「授業で習った書き方以外は間違い」「まだ習ってない構文は使っちゃダメ」「変数名が短すぎる」など、プログラミングの本質的でないところを注意して、生徒のやる気をそいでしまわれることです。プログラミングのいいところは、どのように書いても結果さえうまく出れば正解、というように客観的な判断を下すところができるところであり、生徒にある程度自由を与えながら授業を展開できるところでしょう。そういったことを踏まえることで、生徒がスポーツと同じように、主体的に学習するようになると思います。