日本情報オリンピック1次予選突破の道のり

プログラミング未経験の小中学生が、JOI(日本情報オリンピック)1次予選突破までに何を勉強すればいいか、その方法について。

まずは競技プログラミングの始め方を読んで、11のdefレッスンまで終わらせる。
プログラミング経験者でも、標準入出力や、連想配列、多次元配列などに漏れがある人が少なくないので、飛ばさずにやることをお勧めする。

そして、以下の順番通りに問題演習を行えば、高確率でJOIの1次予選を通過することができるだろう。

  1. 四則演算Lv1~Lv3
  2. 余り演算Lv1
  3. if文Lv1~Lv2
  4. min/maxLv1~Lv2
  5. 余り演算Lv2
  6. 基礎文字列Lv1~Lv2
  7. for文Lv1~Lv2
  8. min/maxLv3
  9. 余り演算Lv4
  10. while文Lv1
  11. if文Lv3~Lv4
  12. 配列Lv1
  13. 基礎文字列Lv3~Lv4
  14. 配列Lv2
  15. for文Lv3~Lv4
  16. 多重ループLv1~Lv3
  17. 二次元配列Lv1
  18. 余り演算Lv3
  19. 二次元配列Lv2
  20. 基礎ソートLv1
一部のレベルが前後しているのは、諸事情によるものなので、気にせずに書いてある通りに進めていただければいい。
具体的な問題演習のやり方としては、まず自力で解いてみて、楽勝であれば問題なし。
多少手こずった場合は、模範解答を見て(公式が無ければ、他の人の提出を見て)、もっと良いコードが書けないか確認。
10分~30分以上考えても解けなかった場合は、諦めて解説を読む。
ここまで終わらせたら、JOIの過去問を解いてみて、ボーダーラインとなる、難易度3のものが解けるか確認しよう。
大抵の場合は解けるはずで、大丈夫であれば、次はAtCoderのコンテストに参加して、茶色レートを目標にしよう。茶色レートへの勉強法はここに書いたので、必要な人は参考に。
もしできなかった場合は、ここまで問題で、自力で解けずに解説を見た物や、解くのに時間がかかったものをやり直すなどしてから、再挑戦しよう。
タイトルとURLをコピーしました