翔泳社の公式通販SEshopは全国送料無料!
ヘルプ 新規会員登録 ログイン
SEshop

プログラマ脳を鍛える数学パズル シンプルで高速なコードが書けるようになる70問 【PDF版】

増井 敏克(著)

商品番号
143500
販売状態
発売中
納品形態
会員メニューよりダウンロード
発売日
2016年09月28日
ISBN
9784798143507
データサイズ
約37.9MB
制限事項
印刷可・テキストのコピー可
キーワード
プログラミング  アルゴリズム  電子書籍【PDF版】  数学

2,838円(税込)(本体2,580円+税10%)
送料無料

258pt (10%)
ポイントの使い方はこちら

在庫あり

初回購入から使えるポイント500円分プレゼント

紙の書籍はこちら

※1点の税込金額となります。 複数の商品をご購入いただいた場合のお支払金額は、 単品の税込金額の合計額とは異なる場合がございますので、予めご了承ください。

  • 本製品は電子書籍【PDF版】です。
  • ご購入いただいたPDFには、購入者のメールアドレス、および翔泳社独自の著作権情報が埋め込まれます。
    PDFに埋め込まれるメールアドレスは、ご注文時にログインいただいたアドレスとなります。
    Amazon Payでのお支払いの場合はAmazonアカウントのメールアドレスが埋め込まれます。
  • 本製品を無断で複製、転載、譲渡、共有および販売を行った場合、法律により罰せられる可能性がございます。
  • ご購入の前に必ずPDF利用案内をお読みください。

パズルを解くコードを、あなたは書けるか?
アルゴリズムがみるみるわかる!プログラミングってやっぱり面白い!

急速な技術の進歩、システム開発競争の激化……。プログラマを取り巻く環境はやさしいものではありません。でも、思い出してみてください。自分の書いたソースコードでプログラムが動くのを初めて見たとき。思い描いた通りのプログラムができたとき。プログラミングの楽しさを感じたことでしょう。何もないところからソースコードだけで新たな価値を生むプログラマは、非常に魅力的な職業です。

本書で登場する数学パズルは、そのようなワクワクにあふれています。「両替したときの硬貨の組み合わせはいくつ?」のような問題から、「国名でしりとりしたときに、一番長く続く順番は?」「運命の出会いは何通り?」というものまで、70の問題を解くコードを、3人のキャラクターたちと一緒に考えていきます。

パズルを解くうちにアルゴリズムが身につき、シンプルで高速なコードが書けるようになります。楽しみながらスキルアップもできて一石二鳥。さっそく挑戦してみましょう!

【使用言語について】
本書の解説では、主にRubyとJavaScriptを使用していますが、解説内容は「考え方」が中心であるため、どんな言語にも応用できます。また、問題を解くために特定の言語が必要になることもありません。

【本書に収録されている問題(抜粋)】
Q01 10進数で回文
Q03 カードを裏返せ
Q08 優秀な掃除ロボット
Q09 つりあわない男女
Q21 排他的論理和で作る三角形
Q33 百人一首の達人
Q45 素数のマトリックス
Q48 グレイコードのループ
Q53 いたずらされたお菓子
Q64 迷路で待ち合わせ

PDF版のご利用方法

  1. ご購入後、SEshopにログインし、会員メニューに進みます。
  2. ご購入電子書籍およびデータ > [ご購入電子書籍およびダウンロードデータ一覧]をクリックします。
  3. 購入済みの電子書籍のタイトルが表示されますので、リンクをクリックしてダウンロードしてください。
  4. PDF形式のファイルを、お好きな場所に保存してください。
  5. 端末の種類を問わず、ご利用いただけます。
はじめに
謝辞
本書の概要
登場人物紹介
ダウンロードファイルについて

第1章 入門編★ プログラムを作って問題を解いてみよう

2進数と10進数
Q01:10進数で回文
Q02:数列の四則演算
Q03:カードを裏返せ
Q04:棒の切り分け
Q05:いまだに現金払い?
Q06:(改造版)コラッツの予想
Q07:日付の2進数変換
Q08:優秀な掃除ロボット
Q09:つりあわない男女
Q10:ルーレットの最大値
Q11:フィボナッチ数列
Q12:平方根の数字
Q13:覆面算を満たすのは何通り?
Q14:W杯出場国しりとり
Q15:階段で立ち話

第2章 初級編★★ 簡単な問題を解いてアルゴリズムの効果を実感しよう

費用対効果を意識する
Q16:3本のひもで作る四角形
Q17:30人31脚に挑戦!
Q18:ショートケーキの日
Q19:友達の友達は友達?
Q20:受難のファサードの魔方陣
Q21:排他的論理和で作る三角形
Q22:絡まない糸電話
Q23:ブラックジャックで大儲け!?
Q24:完璧に撃ち抜くストラックアウト
Q25:オシャレな靴ひもの結び方
Q26:効率のよい立体駐車場
Q27:右折を禁止されても大丈夫?
Q28:クラブ活動への最適な配分
Q29:合成抵抗で作る黄金比
Q30:テーブルタップで作るタコ足配線

第3章 中級編★★★ アルゴリズムを工夫して高速な処理を実現しよう

オーダー記法と計算量
Q31:最短経路の計算
Q32:畳を敷きつめろ
Q33:百人一首の達人
Q34:飛車と角の利き
Q35:運命の出会いは何通り?
Q36:「0」と「7」の回文数
Q37:サイコロの反転
Q38:7セグメントコードの反転
Q39:「白」で埋めつくせ!
Q40:並べ替えの繰り返し
Q41:美しい?IPアドレス
Q42:1つの数字で作る1234
Q43:シャッフルで逆順
Q44:グラスの水を半分に
Q45:素数のマトリックス
Q46:ソートの交換回数の最少化
Q47:オンリーワンな○×
Q48:グレイコードのループ
Q49:反転で作る互い違い
Q50:急がば回れ
Q51:パーフェクトシャッフル
Q52:同時に終わる砂時計
Q53:いたずらされたお菓子
Q54:同じ数字で挟み撃ち
Q55:横着なそろばん
Q56:公平に分けられたケーキ

第4章 上級編★★★★ 視点を変えて高速化を目指してみよう!

ソースコードの個性
Q57:あみだくじの横線
Q58:最速の連絡網
Q59:ハンカチ落としの総走行距離
Q60:セルの結合パターン
Q61:同じ大きさに分割
Q62:交差せずに一筆書き
Q63:カレンダーの最大長方形
Q64:迷路で待ち合わせ
Q65:面倒なキャッチボール
Q66:図形の一筆書き
Q67:クロスワードパズルを作成せよ!
Q68:隣り合わないのがマナー?
Q69:男女平等な席替え
Q70:青白歌合戦

索引
各種問い合わせは以下のリンクからご連絡ください

感想・レビュー

kaizen@名古屋de朝活読書会 さん

2017-01-06

増井敏克 #技術士 プログラム書くと簡単解けるものRuby JapaScript打つ  プログラム書かずに解ける問題もどちらもあること知れば賢し 

calicalikoume さん

2019-08-17

本書を通じて主に再帰を使ったパターン検索と便利な組み込み関数の使い方が自然と身についたと思います。高速化としてはメモ化やビット演算の活用が印象に残っています。数学的な解き方はなかなか気付けず、解答を見て頷く事が多かったです。問題を解く中で、自分のコードでは計算が終わらず解答のアルゴリズムだと一瞬で解けるケースがあったりして何度か衝撃を受けました。Rubyが読めるようになるまでは苦労しますが、解答はシンプルなものが多く説明も丁寧なので理解しやすいと思います。

しんしん さん

2015-10-30

今までに読んだプログラミングパズルの本の中で一番楽しかった。 問題を読んで、アルゴリズムが組み立てられたら次に進むということを1冊続けられたのは自信になった。 問題の題材も楽しくて、本のページ構成も解くことに集中させてくれた。

関連リンク

関連商品

おすすめ特集

法人・教育機関のお客様へ

【法人・教育機関のお客様へ】新年度の大口注文・お見積りなど、お気軽にご相談ください

Webデザイン特集

デザインやコーディングなど、Webデザインに役立つスキルが身につく書籍を揃えました

生成AI特集

テキスト生成、画像生成、動画生成など、生成AI活用のスキルが身につく本をご紹介

新社会人におすすめの本

新社会人の役に立つスキルが身につく本。ビジネスパーソンとしてスタートダッシュを切ろう!

プログラミング教育の本

小学校から必修化!人気の『ルビィのぼうけん』ほかプログラミング教育の本はこちら

翔泳社のセミナー・講座

開発・ビジネス・マーケティング・EC運営・営業支援など、幅広いジャンルの講座を開催

特集をもっと見る