Subfactorial FIXED

Subfactorial FIXEDが終了した。BigDecimal の無い言語にはちょっと厳しかったのか、あまり盛り上がらなかった(とはいえ大して面倒とは思わないが。。。)。
Groovy は Java 系で BigDecimal があるので、短い解が得られた。
色々な人の解を見てみると、rubyleonid さんの解がすごい。問題文で参照されている wikipedia では、

!n=(n-1)*(!(n-1)+!(n-2))

というのがあり、多くの人はこれを使っているようだが、上述 leonid さんは、同 wikipedia の少し下に書いてある、

!n=n!*Σ(-1)**i/i!     i=0..n

を漸化式に変換した、

!n=n*!(n-1)+(-1)**n

を利用していた。#あぁ、これも wikipedia に書いていてくれればいいのに!
この式を利用すると、Groovy の解も、36B まで縮む。
〜〜〜
ところで、Subfactorials は、ミス出題だと思っていたけど、唯一の回答者 nooodl さんの解をみると、上述の Σ の式を直接使った解で、特に、ミス出題を避ける特殊なことはしていないように見える。この問題はどこが間違っているのだろう?あとで試してみるか。