例えば三山Nimの必勝法を調べるときに、同じ状況を
再計算しなくて済むように、山の形をkeyにして計算結果を
保存しているんだけど、Array#inspectをkeyにしたほうがいいのかな?

変な例ですまないが、Rubyで数理パズルとかよく解くんだ。
速度的に問題があったら C で書き直してるけど。