#691. 【递归】装信封问题
【递归】装信封问题
说明
马小虎在人人网上结交一批女网友,在情人节那天,马小虎玩起了浪漫,同时给个女网友每人写了一封各有特色的信,要命的是,激动的他竟然把所有的信都装错了信封! 编写一个程序,计算将所有的信都装错信封,共有多少种不同情况?
例如,3封信全装错信封的种数为2,即231和312;输入包含若干组数据。每组数据是一个整数,表示马小虎写信的封数。= 0 时输入结束。输出对于每组数据,在单独的一行输出一个整数(所有的信都装错信封的种数)。
可用下面公式(错位排列的递推公式):
基本形式:D(1)=0; D(2)=1
递归形式:D()=(-1)*( D(-1)+D(-2))
输入格式
一个正整数
输出格式
所有的信都装错信封的不同情况数。
样例
1
0