解题思路:
注意事项:
参考代码:
#include
using namespace std;
long long n,k;
long long f1(long long n,long long k)//一般用ll防止数据过大
{
if(n<k||k==0)
return 0;//当n<k 集合多于元素 肯定有空的所以为0,集合=0 肯定为0;
else if(k==1||k==n)
return 1;//同理 一个集合和集合数等于元素的数量 return 1;
else
return f1(n-1,k-1)+k*f1(n-1,k);//第一部分为一个元素单独站一个集合,第二部分为一个元素和m个元素(随机,小于n即可)一起占一个集合
}
int main()
{
cin>>n>>k;
long long p=f1(n,k);
cout<<p;
return 0;
}
0.0分
2 人评分