お久しぶりです.ヤンです.今回はパソコン甲子園 プログラミング部門に参加した感想をご紹介します.
パソコン甲子園とは
パソコン甲子園は、コンピュータ理工学が専門の会津大学等が主催する、高校生・高等専門学校生のためのICT分野の全国大会です。
https://pckoshien.u-aizu.ac.jp/
パソコン甲子園には3種類の部門があります.
- プログラミング部門
2人チームで制限時間内に問題に対する解答プログラムを作成し,正解した問題の得点で競います.問題は全10問で,難易度の高い問題になる程配点が高くなります.ABCやJOIのような競技プログラミング形式です. - モバイル部門
Android搭載のスマートフォンを対象に,テーマに基づいた”夢のある”アプリケーションを企画・開発し,その総合的なプロデュース力を競い合います. - いちまいの絵CG部門
テーマに基づき制作され、応募があった1枚のCG作品の表現力や芸術性等を競います.今年のテーマは「温故知新」でした.
この内,一番上のプログラミング部門に出場しました.
結果と感想
解けたのは大問1~4,6,7の6完で,総得点は34点の78位でした.去年は5完だったのでちょっとだけ成長しました.
大問5は入出力例のケースは正常に解けましたがコーナーケースにやられてWAでした……
大問8は制約付きの最短経路問題だったのでBFSで解くつもりでしたが,時間内に上手く実装できませんでした.
大問7にも意外と時間が取られてしまいました.
二値のデータのソートが必要だが,N=10^5と緩めなので実装が楽な二次元配列とバブルソートを使って実装してしまおうか.(ちなみにパソコン甲子園は制約時間が5秒と比較的長めです.)
N=10^7みたいにもう少し厳しい例だと構造体とSTLのsort関数を使った例が楽そうだな.
https://cpprefjp.github.io/reference/algorithm/sort.html
……などと実装中考えていましたが,よくよく問題文を読むとソートする必要はないと気が付きます.問題文をよく読むことは重要ですね.
それと,お恥しいことに大問1で引き算の順番を間違えてしまいWAを出してしまったことを懺悔します.ごめんなさい……
全体の感想としては,捻った問題が少なかったのでWAを出してしまうことが少なくて,素直な解法で実装すればきちんと AC できたので解きやすかったです.欲を言えば大問5と8もACしたかった……
ソースコードはアップロードしても問題ないそうなので以下のリンクにまとめてあります.しかし,公式で問題がまだ公表されていないので未参加の方は問題の公開をお待ちください.
全体のランキングを見て
灘高校強え~~~~~~~~~~~~
という感想でした.チームの2人とも全完できるのすげぇよ……(もちろん1位でした)
また,30~60点代は同得点のチームも多数存在したので,如何にWAを出さずに素早く解けるかが肝になりそうな感じでした.
あとがき
最近は競プロから離れたこともあり,あまり良い結果は残せませんでした.パソコン甲子園は高校生相当の年齢までしか参加できないので今年が最後でした.これからは後輩の育成に挑んでみたいと思います.
高校2年生以下の読者の皆さんは来年のパソコン甲子園へぜひご参加を!もしくは,来月にJOIの一次予選2回目があるのでそちらにも参加できます.普段のプログラミングコンテストでは体験できない高揚感が体験できます.
それでは,お付き合い頂きありがとうございました.
コメント