n封信和n个信封,信全部装错.所有信装错有多少种可能?如n=5时有44种.用PASCAL语言解决

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 16:43:23

n封信和n个信封,信全部装错.所有信装错有多少种可能?如n=5时有44种.用PASCAL语言解决
n封信和n个信封,信全部装错.所有信装错有多少种可能?如n=5时有44种.
用PASCAL语言解决

n封信和n个信封,信全部装错.所有信装错有多少种可能?如n=5时有44种.用PASCAL语言解决
我编了个程序算了一下,n从1到9,分别有0,1,2,9,44,265,1854,14833,133496.
对于第n个数的规律是这样的:f(1)=0;f(n)=f(n-1)*(n+1)-1+(n mod 2)*2;你可以验算一下.
递归法程序如下:
program sgxf;
var n:longint;
function f(x:longint):longint;
begin
if x=1 then f:=0
else if x=2 then f:=1;
else f(x):=f(x-1)*(n+1)-1+(x mod 2)*2;
end;
begin
readln(n);
writeln(f(n));
end.
如果编译器允许,你可以用int64类型.