描述
转眼毕业了,曾经朝夕相处的同学们不得不都各奔东西,大家都去了不同的城市开始新的生活。在各自城市居住了一段时间后,他们都感到了一些厌倦,想去看看其他人的生活究竟如何,于是他们都选择到另一个同学所在城市去旅游,并且希望旅游的城市各不相同,他们想知道有多少种不同的方案,可是数量实在太多了,他们无法计算出来,你能帮助他们吗。
输入
一个正整数n(n<200),表示人数。
输出
一个数,表示有多少不同的方案。
样例输入
3
样例输出
2
我の思考
这个题,很好思考,但是会超出范围,要用大数来解决。(今天事情做不完了QAQ,明天再来)
我の代码
#include <iostream>
using namespace std;
int carry(int n){
if(n==1)
return 0;
if(n==2)
return 1;
return (n-1)*( carry(n-1) + carry(n-2) );
}
int main()
{
int n;
cin>>n;
cout<<carry(n)<<endl;
return 0;
}