PG BATTLE 2022 「企業の部」優勝者である、エムシーデジタル『例の奴ら』チームの皆様にインタビューを行いました!
プログラミングを始めたきっかけやPG BATTLE参加の経緯、コンテスト当日の様子などお伺いしましたので、ぜひご覧ください!
●PG BATTLE 2022ホームページ
https://products.sint.co.jp/pg_battle_2022
●PG BATTLE 2022 Twitter 結果発表会 まとめ
https://togetter.com/li/1971168
エムシーデジタル『例の奴ら』チームのご紹介
(左) 小畑哲雅氏:せんべい担当
(中) 髙橋昌大氏:ましゅまろ担当
(右) 佐藤遼太郎氏:かつおぶし担当
『例の奴ら』チームはPG BATTLE 2022「企業の部」最多191チームの中で、見事1位を勝ち取られました。合計点:300点/300点、タイム:210分57秒/270分という好成績は、企業の部ではなんと唯一の満点、さらに企業としては2連覇達成という大変華々しい結果となっております!(かつおぶし担当の佐藤さんは、去年の「企業の部」の優勝メンバーでもあり、また個人としては3年連続かつおぶしで満点を達成されています)
インタビュー:PG BATTLE 優勝までの道のり
PG BATTLE 2022の優勝おめでとうございます!そして企業として2連覇達成おめでとうございます!参加の経緯を教えてください。
(髙橋) PG BATTLEの1か月前に、今年も参加しようという話になりました。社内でも参加する人が多くて、全部で4チームぐらい出場しているかと思います。担当難易度はAtCoderのレートで決めました。
プログラミングを始めたきっかけは?(佐藤さんのきっかけは2021優勝者インタビューをご覧ください)
(髙橋) 大学で情報系を専攻していて、その授業の一環でプログラミングに触れたのがきっかけです。
(小畑) 一番初めにプログラミングに触れたのは高校生の時ですが、本格的に始めたのは大学の講義がきっかけですね。
競技プログラミング(以下競プロ)を始めたきっかけは?(佐藤さんのきっかけは2021優勝者インタビューをご覧ください)
(小畑) 友人にパズルっぽい面白いものがあると勧めてもらったのがきっかけです。
(髙橋) 競プロをやっている友達がいて、プログラミングの練習になるよというので自分もやってみました。
(記者) 周りにやっている人がいて、自分もやり始めたという方が多いですよね。競プロとの出会いって、最初はやっぱりAtCoderですか?
(髙橋) そうですね、日本のサイトで参加しやすいこともあるので、そうかなと思います。
(記者) AtCoderのような競プロが強くなるために、初心者はどうやって勉強したらよいと思いますか?
(小畑) ABC(AtCoder Beginner Contest)などのAtCoder的コンテストの内容が2年ぐらい前に大幅に変わったなというイメージがあるので、今だと基本的なアルゴリズムを抑えるのが大事なのかなと思います。
(髙橋) そうですね。ABCでは昔よりアルゴリズムの知識が求められるようになってきているように感じます。
(佐藤) 周りの人たちを見ていて思うのは、毎週継続して取り組み、できなかったところは潰していく、そういうことをちゃんとやっている人が伸びていると思います。コンテストの後に、一つでも復習することを毎回やるだけで違ってくるんだろうなと思います。
普段の勉強方法は?
(髙橋) あまり練習はしていません。業務で必要になった知識を調べたりはしますが、基本的にはやりたいことを適当にやっている感じです。(笑)
(小畑) 最近競プロはやっていないのですが、中国の方が書いたマニアックなアルゴリズムのブログ記事を読んでいます。
(記者) 中国は競プロが熱いのですか?
(小畑) そうですね。中国の方はとがった内容の記事を書いていますね。(笑)
(髙橋) 突然コンテストサイトにむちゃくちゃ強い人が現れて1位になって、調べてみたら中国の方で。強い人に誘われて最近始めたみたいな人がいて、中国には強い人が沢山いるなという印象です。
(佐藤) 勉強法は、去年とやっていることは変わらないです。本やネット上の記事を勉強したり、解けない問題を考えたり、問題を作ろうとして色々新しいテクニックを考えたり・・・。あとは最近社内で、髙橋さんや去年のPG BATTLEのチームメイトもいるのですが、数学や最適化などの本の輪読会を開いて勉強しています。
(記者) おすすめの書籍はありますか?最近アルゴリズムの本がでてきているようですが。
(佐藤) 最近出た本は入門としてはとっつき易くてよいと思うんですが、自分はもう対象者じゃなくなったので読んでないです。私はいわゆる「蟻本(プログラミングコンテストチャレンジブック)」を読んでいます。
(記者) 競プロで使うアルゴリズムが、業務に直結する瞬間やそれを感じる瞬間はありますか?
(髙橋) 競プロの問題はプログラミングの実装力とアルゴリズムの知識と発想力が求められる気がするのですが、業務では実装力や基本的なアルゴリズムの知識が必要になると思います。弊社だと最適化のプログラムを組んだりするので、基本的な動的計画法のアルゴリズムを使用したりします。
PG BATTLE当日までの練習や対策はありましたか?
(小畑) しばらく競プロから離れていたので最新のABCを1セット解いてみたのですが、後半が解けなくて焦りました。(笑)
(髙橋) PG BATTLEのプラットフォームでABCの問題が見れたので解こうとしたのですが、普通に難しくて・・・(笑)
(佐藤) 普段通りにやっていました。
(記者) PG BATTLE直前は緊張されますか?
(小畑) 若干ですね。自分がミスしたらルールが悪いと開き直るので・・・(一同笑)
連続優勝は意識していましたか?
(佐藤) 会社から何チームか出ていたので、自分のチームでなくてもどこかのチームが優勝してくれるだろうと思っていました。なので、そこまで気負わずに参加できました。全員がノーミスというのは運も絡んでくる気がするので、とりあえずミスしないように気を付けました。
(髙橋) 毎年ではないですが、2018年の1回目から参加していて優勝したことがなかったので、優勝出来たらいいなと思っていました。
(小畑) 私もこれまで学生時代に何度か参加していたのですが、結果が満足いくものではなかったので、過去の自分の成績へのリベンジの気持ちの方が大きかったですね。今回、企業の部に初参加して、初めて満点が取れてよかったです。
※オフィスに飾られた燦然と輝く2つの優勝トロフィー! 左:2021年 右:2022年
言語はあらかじめ決めていますか?問題を見て変えますか?
(小畑) 私はずっとC++ですね。どんな問題がきてもC++を使おうと思っていました。
(髙橋) 基本的にはC++です。多倍長整数とかがあるときはPythonを使ったりしますが、今回はなかったので使っていません。
(佐藤) 普段はほぼC++です。C++は十分速いですし、よく使うアルゴリズムは最初からC++で書き溜めてあって、コンテスト時にそこから必要なものを貼り付けて使用しています。問題によってはPythonを使います。
(記者) 仕事ではどうですか?
(髙橋) 仕事ではPythonですね。
(佐藤) 私はC++とPythonの両方を使います。
(小畑) 私は8割Python、2割C++くらいですね。
(記者) 使用できるプログラミング言語はどのくらいありますか?
(髙橋) 何も見ないで書けるのはC++とPythonです。
(小畑・佐藤) 私たちもそうですね。
PG BATTLE直後はいかがでしたか?
(髙橋) コンテスト終了後でないと結果が分からないので、自分でテストケースサンプルを作って確認しました。確認にじっくり時間をかけたので、あとは他のメンバーに任せる感じになりました。
(記者) 念入りに確認されたということですが、これは当たってるだろうという感触はどのぐらいあるものですか?
(髙橋) 自分が担当した分は大丈夫だろうと思ってました。でも、大丈夫と思っても思わぬケースで落とすことがあるので安心はできないですね。
(佐藤) 若干不安はありました。解法と愚直に解くものを書いて結果を比較・確認したのですが、2問目はそれが書きづらかったので、もしかしたら落としたかもしれないと思ってちょっと怖かったですね。
(小畑) 3問目までは大丈夫だと思っていました。4問目は念入りにチェックしたので、満点は取れているとは思っていたのですが、時間をかけたのですみませんと伝えました。
(記者) 結果が後で分かるシステムって正直どうですか?賛否両論あるのですが・・・。
(佐藤) 普通にやると普通に強い人が勝っちゃうので、年イチでこういうのがあってもいいかなと思います。(笑)
(小畑) 悪くはないと思うし、あってもいいと思いますが、好きか嫌いかで言ったら私は嫌いですね。(一同笑)
(記者) 申し訳ございません。(一同笑)
チーム名「例の奴ら」の由来は?
(佐藤) プログラミングコンテストに出ている人たちのツイッターで、『青春アミーゴ』という歌のフレーズが流行っていまして、そのフレーズから拝借して名付けました。
結果発表会はリアルタイムでご覧になりましたか?
(全員) はい。
(記者) ありがとうございます!参加者視聴率が低いので、嬉しいです!(一同笑)
(髙橋) 自宅で見ていました。先に発表があった大学の部で満点が出ていたので、同じレベルのチームが企業の部にいたら負けるなと思っていました。
(佐藤) 私も自宅で見てたのですが、さすがにちょっと緊張しました。順位が出てきて300点が2チームいたら負ける気がしてたのですが、2位が満点じゃなかったので、その際に優勝できたと思ってホッとしました。
周りから反応はありましたか?企業では2年連続優勝とのことで、会社の人達から注目されていたかと思いますが・・・。
(髙橋) 会社がPG BATTLEやISUCON(Iikanjini SpeedUp Contest)への参加を推奨していて、入賞したら粗品(アマゾンギフト券)がもらえる制度があったので、粗品をいただきました。また、Slackでいっぱいスタンプが来て社長にも褒められました。
(小畑) 同じプロジェクトの他社の方から「優勝すごいですね」という言葉をかけて頂き、嬉しかったです。
(佐藤) 妻に「おめでとう」と言ってもらえ、その日は夕食のおかずを増やすことになりました。(一同笑)
(記者) 素敵です!!
PG BATTLEに参加してよかったことはありますか?
(小畑) 賞金をいただきまして、ありがとうございました。(笑)
(佐藤) プログラミングコンテストを趣味でやっていると言っても、どのぐらいすごいとか、どのくらいのものなのかあまり分からってもらえないのですが、優勝したというとアピールになるし、名だたる参加企業の中で成績が残せたことは、会社的にもプログラミングが強いというイメージが付くのでよかったと思います。あと、コンテストが増えて嬉しいです。
(髙橋) チームで参加できるコンテストは貴重なので、チームを組むことを通して会社の人と親睦が深めることができたかなと思います。
優勝賞金(Amazonギフト券24万円)はどのように使いましたか?
(佐藤) パソコンを買おうと思っています。
(小畑) VR機器を買わせていただきました。
(髙橋) 大きいものは買っていなくて、技術書とか小物を買っています。
競プロは実務にどのようなメリットがあると感じられますか?
(髙橋) 競プロをやっている人は普段からコードをたくさん書いていると思うので、プログラムを書くスピードや実装を仕上げるまでのスピードが速い人が多い気がします。またコンテストの中でもヒューリスティックコンテストでは、厳密解が高速に求まらない問題に対して、可能な限り最適な答えを求めることが多いと思います。このような問題と同様に、業務で携わる問題は制約が多く、厳密解が高速に求まることはあまりないので、ヒューリスティックコンテストの経験は特に相性がいいと思います。
(佐藤) 競プロをしている人はコーディングに強い人が多くて、複雑なロジックをできる限り綺麗に書けるようになっていると思います。以前、私がバグを埋め込んでしまったときに、複雑なロジックの中から小畑さんが見つけてくれたことがありました。そういうのは、競プロをやっている人が非常に得意な分野ではないかと思います。
(小畑) プログラミングをする上でデバッグ作業は避けられないので、競プロは役に立つと思います。
(記者) 競プロで論理思考力が鍛えられるのか、論理思考力が強い人が競プロをやっているのか、どちらだと思いますか?
(小畑) どちらも正しいと思います。
(佐藤) 私も論理思考力は確実に鍛えられていると感じています。同じ動きをするプログラムだとしても、昔の自分より今の自分の方がきれいに書けるようになっていると思います。
※エムシーデジタル様の社内から見渡せる素晴らしい景色をご覧ください!
これからPG BATTLEに参加しようと思っている人たちに向けて、一言お願いします!
(髙橋) 競プロを始めるきっかけになるかもしれないし、やると盛り上がるのでお勧めです。
(佐藤) TOP10に入らなくても、飛び賞が沢山あるので気軽に参加するのもいいかなと思います。飛び賞が充実しているのは、PG BATTLEの特徴だと思いますよ。
(小畑) 楽しく参加するという姿勢でも、上位を狙うという姿勢でも、ミスしたら仕方ないというぐらい気楽な気持ちでやってみるといいと思います。
PG BATTLE 2023も開催予定です。参加していただけますか?
(全員) 参加するつもりです。
(記者) 企業としては3連覇、佐藤さんは4度目の満点がかかっていますね!
(佐藤) 結果にこだわるとチームに申し訳ないので、着実に点が取れるようにいこうと思います。
※本文中では敬称を省略させて頂きました。
最後に
お忙しい中インタビューに応じてくださった『例の奴ら』チーム様、誠にありがとうございました。学生時代にPG BATTLEに何度かご参加経験があった髙橋さんと小畑さん。その際には取れなかった満点を、今回初参戦した企業の部でお二人して見事満点を取られました!前回の優勝メンバーだった佐藤さんは今回新チームとして挑み、2連覇に大きく貢献し、安定した強さを見せつけました!来年は企業の部初の3連覇に、期待がかかるところです。
PG BATTLE 2022「企業の部」には全体で最多の191チーム(573名)の皆様にご参加いただき、誠にありがとうございました!飛び賞(スポンサー賞)も充実しておりますので、我こそは!と思われる方はぜひご参加をお待ちしております。
●PG BATTLE ホームページ
https://products.sint.co.jp/pg_battle
- カテゴリ:
- キーワード: