2007-11-27から1日間の記事一覧

javascript で SEND + MORE = MONEY

覆面算を append map の深さ優先探索で解いてみる。 参考 ocaml-nagoya:ネタ記録庫 function solve() { // var digs = [0,1,2,3,4,5,6,7,8,9]; var digs = $A($R(0,9)); var m = 1; var o = 0; var s = 9; return digs.without(m,o,s).map(function(e) { ret…

たたみすぎる Array#flattenはprototype.jsでも。

さくっと深さ優先探索したいときに map でこう書く。 aϵ[0,1,2]とbϵ[1,2,4]からa+bが奇数になるペアを求める。 function solve() { var a = [0,1,2]; var b = [1,2,4]; return a.map(function(x) { return b.map(function(y) { if ((x + y) % 2) return [x,y…

prototype.js の max,min がいまいち

体力が一番残ってるやつの名前が知りたいとき [{name: "foo", hp:5}, {name: "bar", hp:3}, {name: "boo", hp:2}].max(function(x) {return x.hp}); 実行結果 5 HP5じゃなくてインデックス(この場合 0)か要素をよこせ。 ああ、こんなとき関数型言語ならfold…