○○○+○○○=○○○○
○に全て異なる0〜9の数字が入る組み合わせを列挙せよ

という問題。適当に書いても1秒かかんない問題だというのに無駄に場合分け・最適化を行わないと気がすまない凝り性な自分に自己嫌悪。しかもデータ構造が良くないから結局最速とは程遠いという。ところで真面目な話こういう時って未使用の数字をどうやって保持するもんなんでしょうか。0〜9の配列で持つと「ほにゃららはまだ未使用か」というのを調べるのは早いけど「まだ使ってないやつだけで片っ端から探索」というのは遅い、連結リストはその逆ということで。n進数バージョンのnが増えたときってどっちがいいんだろうか。むしろ両方持つのか。