王道计算机机试——不容易系列错误排列方法
题目描述
有个网名叫做 8006 的男性同学,结交网友无数,最近该 同学玩起了浪漫,同时给 n 个网友每人写了一封信,这都没什么,要命的是,他 竟然把所有的信都装错了信封!注意了,是全部装错哟!现在的问题是:请大家 帮可怜的 8006 同学计算一下,一共有多少种可能的错误方式呢?
输入: 输入数据包含多个多个测试实例,每个测试实例占用一行,每行包含一个正 整数 n(1<n<=20),n 表示 8006 的网友的人数。
输出: 对于每行输入请输出可能的错误方式的数量,每个实例的输出占用一行。
样例输入:
2
3
样例输出:
1
2
代码
#include<stdio.h>
long long F[21];
int main() {
F[1] = 0;
F[2] = 1;
for (int i = 3; i <= 20; i++)
F[i] = (i - 1) * F[i - 1] + (i - 1) * F[i - 2];
int n;
while (scanf("%d", &n) != EOF) {
printf("%lld", F[n]);//输出
}
return 0;
}
探讨了在王道计算机机试中,一个男性同学给n个网友写信并全部装错信封的问题,通过递推公式计算错误排列数量的方法。输入为网友人数n,输出所有可能的错误排列数量。
1070

被折叠的 条评论
为什么被折叠?



