gxqcn 发表于 2010-5-24 09:52:29

Mathematica 中的 Subfactorial 函数也许就是求它的吧。
gxqcn 发表于 2010-5-22 19:52 http://bbs.emath.ac.cn/images/common/back.gif
请教wayne:我上面这句正确吗?因为我对 Mathematica 不熟。

wayne 发表于 2010-5-24 09:57:22

11# gxqcn
:loveliness: ,非常正确

wayne 发表于 2010-5-24 10:06:28

为什么和阶乘及e有了联系,而且还是四舍五入呢?
wsc810 发表于 2010-5-24 09:49 http://bbs.emath.ac.cn/images/common/back.gif
看来郭大大在2楼的回复内容太短。

我来润色一下。
根据容斥原理,可以推算出
f(n)=n!(1-1/{1!}+1/{2!}-1/{3!}+...+(-1)^n*1/{n!})
另外,很凑巧的又有,1/e=1-1/1!+1/2!-1/3!+...
容易得知 |f(n)-n!/e|<1/(n+1)
所以,我们就可以用去整函数的定义,把f(n)写成
f(n)=round(n!/e)

gxqcn 发表于 2010-5-24 10:11:59

谢谢!

我当时是用容斥原理推导出其表达式,但没想到 round(n!/e) 如此简洁,所以心中有疑惑。

wayne 发表于 2010-5-24 10:12:20

11# gxqcn


说实在的,我感到很惊奇。
不知大大怎么知道有这个函数。
===========================
BTW:Mathematica的本地化做的还不好,中文翻译的贼烂,看英文就知道了:
http://reference.wolfram.com/mathematica/ref/Subfactorial.en.html
gives the number of permutations of n objects that leave no object fixed.

gxqcn 发表于 2010-5-24 10:18:57

我曾查过 Mathematica 提供了哪些数论或组合函数(当然是我自己感兴趣的),
把这些函数收集了下存了一下档,所以对这个函数有点印象。

wayne 发表于 2010-5-24 10:22:33

关于部分元素不在本位的排列问题,就比较简单了,C_n^k*f(n)

参考资料:
http://mathworld.wolfram.com/Subfactorial.html
http://mathworld.wolfram.com/Derangement.html
http://mathworld.wolfram.com/PartialDerangement.html

wayne 发表于 2010-5-24 10:52:36

16# gxqcn


呵呵,数学软件可谓是集计算之精华啊

=======================================
我发现最近Mathematica这个keyword我敲的挺多的,以至于我现在只需敲M,搜狗输入法立马就联想到Mathematica了,:)。
页: 1 [2]
查看完整版本: 不在本位的排列问题