CodeIQ Blog

自分の実力を知りたいITエンジニア向けの、実務スキル評価サービス「CodeIQ(コードアイキュー)」の公式ブログです。

CodeIQの問題が一冊の本になりました!『プログラマのためのコードパズル~JavaScriptで挑むコードゴルフとアルゴリズム』 #javascript #codegolf

CodeIQ中の人、millionsmileです。

CodeIQローンチしてから約1年半。その間、700問以上の問題を出してきましたが、なんとなんと、そのうち、CodeIQで人気問題をだしてくれている柳井政和さんの問題が一冊の本となりました!!!

内容は、柳井さんがCodeIQで出題したJavaScriptを使ったコードゴルフやアルゴリズムの問題と、その解説となります。

また、5名ほど、実際に提出された挑戦者の解答コードも掲載されています。
名誉ある5名の挑戦者は以下。

(アルファベット順)
hogeover30様
iehn様
ozy4dm様
rotary-o様
sapics様

以下、著者でもあり出題者でもある柳井政和さんからの寄稿になります。

◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

●タイトル:
『プログラマのためのコードパズル~JavaScriptで挑むコードゴルフとアルゴリズム』

f:id:codeiq:20140203155218j:plain

●本文:

CodeIQで出した「コードゴルフ」や「アルゴリズム」問題の本が出ました!

CodeIQで出題した様々な問題。その中から以下のエッセンスを抽出して、1冊の本にしました。

・「コードゴルフ」のテクニックの解説。

・「コードゴルフ」問題に使われていたアルゴリズムの解説。

・「アルゴリズム」問題の様々な解答や、周辺知識の解説。

「コードゴルフ」や「アルゴリズム」に興味がある方には、面白い内容になっていると思います。是非お手にとって、ご覧下さい。

細かな解説内容

以下のような内容を解説しています。目次も合わせて、ご覧下さい。

幅広い内容が掲載されていますので、読み物としても楽しめると思います。

コードゴルフの解説

・言語仕様上のショートコーディング技術。
・各問題での、短縮化の過程とその解説。
・各問題での最短コード。

アルゴリズムの解説

・エラトステネスの篩
・地形コスト付きマップの最短経路
 ・再帰的手法での実装
 ・自前スタック処理での実装
・迷路を作るアルゴリズム
 ・棒倒し法
 ・穴掘り法
 ・壁伸ばし法
・ランダムのアルゴリズム
・計算式をevalを使わずに解く
 ・シンプルに解く
 ・逆ポーランド記法に変換して解く
・画像の拡大縮小アルゴリズム
 ・ニアレストネイバー法
 ・バイリニア法
 ・バイキュービック法
・マンデルブロ集合
・ワールドマップ生成
・視界範囲が限定されているマップ
 ・燃料節約問題
 ・索敵砲撃問題

本の基本情報

書名   プログラマのためのコードパズル
     ~JavaScriptで挑むコードゴルフとアルゴリズム
著者   柳井政和
価格   本体2380円+税
ISBN   978-4-7741-6253-9
発売日  2014/2/4
判型   A5判
色数   1色
ページ数 304


― 目次 ―

はじめに
introduction 「コードゴルフ」と「アルゴリズム」

第1部 まずは雰囲気を知ろう

1.1 コードゴルフ 問題1  アスキーアートで円を描こう①
1.2 コードゴルフ 問題2  アスキーアートで円を描こう②

第2 部 シンプルな手順をコードに変換

2.1 アルゴリズム 問題1  素数をみつける不思議な“ ふるい”
2.2 アルゴリズム 問題2  山あり谷あり最短経路を探せ

第3部 短く書くテクニックを知ろう

3.1 コードゴルフ コードを削減するテクニック
3.2 コードゴルフ 短縮化ツール
3.3 コードゴルフ 問題3  ミノタウロスもびっくり 迷路の自動生成

第4部 同じ目的を実現する様々な手法

4.1 アルゴリズム 問題3  計算式をコンピュータに理解させよ
4.2 アルゴリズム 問題4  画像を“ びよ~ん” と拡大しよう

第5部 短いコードで複雑な世界を出力

目次の詳細は、以下の「リリース情報」から見ることができます。
5.1 コードゴルフ 問題4  自己相似な世界 フラクタルな図形を描く
5.2 コードゴルフ 問題5  山・平地・海 ワールドマップを生成する

第6 部 限られた情報から全体を想像する

6.1 アルゴリズム 問題5  燃料を節約して未知の地形を踏破せよ
6.2 アルゴリズム 問題6  暗黒惑星での戦い 敵を索敵して撃滅せよ

第7 部 問題を作ってみよう

7.1 コードゴルフ問題を作成する
7.2 アルゴリズム問題を作成する

おわりに
参考資料

目次の詳細は、以下の「リリース情報」から見ることができます。
http://crocro.com/company/release/20140122.html

◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

この本、すごくほしい!という方は、この本がプレゼントされる特典付き問題が現在掲載中なのでぜひ挑戦してみてください。

■スーパー楕円のダンジョン - LV1 by クロノス・クラウン合同会社 柳井 政和 さん
https://codeiq.jp/ace/yanai_masakazu/q702
締切:2月17日(月)AM10:00まで
f:id:codeiq:20140203160057p:plain

エンジニアのための新しい転職活動!CodeIQのウチに来ない?の特集ページを見る