概要
基本的に学生時代に競技プログラミング,とくに国際大学対抗プログラミングコンテスト(ICPC)に時間を使った著者陣による電子書籍です。著者陣の内1人はICPCでは世界大会へ行き,その後,IBMでICPCのホストを経験しました。別の1人はICPCの練習会に多くの難問を提供していることで知られています。これら実力者が記す競技プログラミングの入門書です。電子書籍だけでの展開です。
こんな方におすすめ
- 競技プログラミングを知らない方
- 競技プログラミングを知っていて,やってみたい方
- 競技プログラミング初心者
目次
第1章 競技プログラミングって楽しいよ!
- 競技プログラミングとは?
- いろいろな大会
- コラム:競技プログラミングはネトゲである
第2章 簡単な問題を解いてみよう
- 例題:コラッツ予想
- 問題の読み方
- 実際に解いてみよう
- 例題:ゴールドバッハの予想
- 練習問題
- 練習問題の解答
- コラム:作業を自動化する
第3章 探索
- 深さ優先探索と幅優先探索
- 深さ優先探索の例題:テトラベックス
- 幅優先探索の例題:ブレイブ・フォース・ストーリー
- 練習問題
- 練習問題の解答
- コラム:競技プログラミングと実務プログラミングの関連性は?
第4章 動的計画法
- 動的計画法
- 例題:計算を復元せよ
- 例題:双子の読書感想文
- 練習問題
- 練習問題の解答
- コラム:定数倍の高速化はあまり意味が無い
第5章 グラフ
- グラフとは?
- グラフのC++による実装
- ダイクストラ法
- 例題:お姫様の危機
- 例題:勇敢なお姫様またも現る
- 練習問題
- 練習問題の解答
- コラム:競技用プログラマーのコードは汚い?
第6章 幾何
- 幾何であらわれる様々な要素
- 例題:不死の宝玉
- 例題:Turn Polygons
- 練習問題
- 練習問題の解答
- コラム:社会人から始める競技プログラミング