ただのにっき
2014-06-03(火) [長年日記]
■ BOOKSCANに送る本の冊数を計算するアプリを作った
ひさびさにサンデープログラミング。
毎月BOOKSCANに送る本を選ぶときに、BOOKSCANの「冊数」(350ページまでが1冊、あとは+200ページごとに+1冊)を計算するのがつくづく面倒くさくなったので、計算してくれる簡単なWebアプリを作った。候補になってる本のISBNをバババっと入れていくと、一箱に収まるかどうかを計算してくれる。とりあえず自分の役に立てばいいのでライトプラン専用、デザインも最小限*1。本の題名はAmazonへリンクになっているので、一箱分が埋まったらそのまま注文してしまえば良い。
なお、一箱分を超えると二箱目に突入するが、以降は一箱目がもっともお得になるように遺伝的アルゴリズムを使って最適なセットを計算する(えっ、この人なに言ってるの……?)。なお「お得」の意味は「一箱に入るトータルのページ数を最大化する」ということである。三箱目以降も同様*2。
例によってソースはGitHubで。