もっとプログラマ脳を鍛える数学パズル アルゴリズムが脳にしみ込む70問


もっとプログラマ脳を鍛える数学パズル アルゴリズムが脳にしみ込む70問


翔泳社


著者:増井敏克



はじめに
謝辞
本書の概要
登場人物紹介
ダウンロードファイルについて
購入特典について

序章
 パズル問題を解くコツ

第1章 入門編 素直に実装して感覚をつかもう
Q01:一発で決まる多数決
Q02:山手線でスタンプラリー
Q03:ローマ数字の変換規則
Q04:点灯している量で考えるデジタル時計
Q05:枚数で考えるパスカルの三角形
Q06:長方形から作る正方形
Q07:ファイルの順番を元どおりに戻したい!
Q08:セルの結合で一筆書き
Q09:ナルシシストな8進数
Q10:アダムズ方式で議席数を計算せよ!
Q11:オリンピックの開催都市投票
Q12:円周率に近似できる分数
Q13:並べ替えの繰り返し2
Q14:現地で使いやすい両替
Q15:幅優先の二分木を深さ優先探索
Q16:既約分数はいくつある?

第2章 初級編 メモ化などを使って処理時間を意識しよう
Q17:グループで乗るリフト
Q18:非常階段での脱出パターン
Q19:バランスのよいカーテンフック
Q20:酔っ払いの帰り道
Q21:本の読み方は何通り?
Q22:百マス計算で最小のマスをたどると?
Q23:セミナーの座席を整列させろ
Q24:予約でいっぱいの指定席
Q25:左右対称の二分探索木
Q26:回数指定のじゃんけん
Q27:大家族でチョコレートを分けるには
Q28:パターゴルフのコース設計
Q29:公平に分けられたケーキ2
Q30:交互に取り合うカードゲーム
Q31:ソートされないカード
Q32:乗客のマナーがよすぎる満員電車
Q33:ホワイトデーのお返し
Q34:左右に行ったり来たり
Q35:かしこい幹事の集金術
Q36:上下反転した数字
Q37:ダイヤルロックを解除せよ!
Q38:全員が大きく移動する席替え

第3章 中級編 数学的な工夫を考えて処理を高速化しよう
Q39:隣り合うと消えちゃうんです
Q40:沈みゆく島で出会う船
Q41:スタートメニューのタイル
Q42:大忙しのサンタクロース
Q43:隣り合えないカップル
Q44:3進法だとどうなる?
Q45:一筆書きの交点
Q46:一筆書きでクルクル
Q47:圧縮できるパターンは何通り?
Q48:均等に分配されるカード
Q49:番号の対応表で作るグループ
Q50:戦闘力で考えるモンスターの組み合わせ
Q51:連続する桁の数字で作る平方数
Q52:一列に並べたマトリョーシカ
Q53:重さが素数の荷物を運ぶエレベーター
Q54:素数で作る天秤ばかり
Q55:十文字に反転して色を揃えろ
Q56:回数指定のじゃんけん2
Q57:急行停車駅と特急停車駅のパターン
Q58:ポーランド記法と不要なカッコ
Q59:取られたら取り返す!
Q60:○×ゲームの結果画面は何通り?

第4章 上級編 複雑な処理を正確に実装しよう
Q61:互い違いに並べ替え
Q62:壊れたピンチハンガー
Q63:永遠に続くビリヤード
Q64:最短距離で往復できる形は?
Q65:n-Queenで反転
Q66:整数倍の得票数
Q67:迷路の最長経路
Q68:Base64で反転
Q69:ファイル数が異なるフォルダ構成
Q70:他人と同じ商品は選ばない

索引

書籍目次

Posted by shi-n