初心者が CODE FESTIVAL 予選突破するには

はじめに

この記事は,競技プログラミング初心者が CODE FESTIVAL 2015 の予選を突破して本選に出場するためには,どのような準備をしたら良いのかということを,僕が考えた個人的な記事です.これを読んで行動して酷い目にあっても怒らないでください.

CODE FESTIVAL とは?

recruit-jinji.jp

リクルートホールディングスが主催する,日本最大のプログラミングコンテストのイベントです.200人が参加することができ,ホテルと交通費が支給されます.

この動画を見るのが早い↓

www.youtube.com

2014年の予選の結果

予選A,予選Bの2回の予選が行われました.予選では解けた問題に応じて得点が与えられ,総合点が同じ場合はかかった時間が短いほうが順位が上になります.

予選A

code-festival-2014-quala.contest.atcoder.jp

  • 問題数: 4問
  • 制限時間: 120分
  • 出場枠: 上位120名
  • 突破ライン: 330点・67:17
  • A問題・B問題・C問題(各100点)を完答し,D問題で部分点(30点)を取る330点がボーダーラインになりました.

予選B

code-festival-2014-qualb.contest.atcoder.jp

  • 問題数: 4問
  • 制限時間: 120分
  • 出場枠: 上位80名
  • 突破ライン: 300点・95:43
  • A問題・B問題・C問題(各100点)を完答し,D問題で部分点(30点)を取る330点に達していれば通過できました.また,D問題で部分点を取らない300点でも8名が通過しました.

予選に向けて何をすれば良いか

2014年の予選の結果から,「A問題・B問題・C問題を完答して300点を確保し,D問題の部分点を取りに行く」が基本戦術になりそうです.まずは300点を確保するために,各問題対策の練習をすれば良さそうです.

A問題対策

入出力に関する問題が出題されると思います.練習ページで自分のプログラミング言語の入出力方法を知っておくとよいでしょう.

練習ページ

practice.contest.atcoder.jp

B問題対策

N個のデータが渡されて,それを処理する問題が出ると思います.処理自体は難しいものではないと思われますので,forループなどの基本的な構文を押さえておくとよいでしょう.

C問題対策

頭の体操的な問題が出題されると思います.特別な知識は必要ではありませんが,発想の転換が必要になったり,工夫が必要になったりします.じっくり考えて色々な解き方を思いつくようにすると良いでしょう.

2014年予選の問題

D問題対策

動的計画法などの知識を要する問題が出ると思います.ただ,そのような知識がなくても部分点は狙えると思います.

2014年予選の問題

おわりに

わからない問題を聞ける人が周囲にいなければTwitterなどで聞いてみるのも良いと思います.