第21934题
C++编程:计算n个同学错位旅行的不同方案数

青少年软件编程(C语言)等级考试试卷(八级):旅行

转眼毕业了,曾经朝夕相处的同学们不得不都各奔东西,大家都去了不同的城市开始新的生活。在各自城市居住了一段时间后,他们都感到了一些厌倦,想去看看其他人的生活究竟如何,于是他们都选择到另一个同学所在城市去旅游,并且希望旅游的城市各不相同,他们想知道有多少种不同的方案,可是数量实在太多了,他们无法计算出来,你能帮助他们吗?

时间限制:10000ms 内存限制:131072KB

输入

一个正整数n(n<200),表示人数。

输出

一个整数,表示不同的方案数。

样例输入

3

样例输出

2

提示

有如下两种方案:

  1. 同学1去同学2的城市,同学2去同学3的城市,同学3去同学1的城市;
  2. 同学1去同学3的城市,同学3去同学2的城市,同学2去同学1的城市。