#include <iostream>
using namespace std;
int f(int n,int m)//对n个数划分为m个
{
if(m==1||n==m)
return 1;
else
return f(n-1,m-1)+f(n-1,m)*m;//第m个为单独元素和地m个为非独立元素
}
int main()
{
int n;
cout<<"集合中包含元素的数目";
cin>>n;
int sum = 0;
for(int i = 1; i <= n; i++)
{
sum+=f(n,i);
}
cout<<sum;
return 0;
}
using namespace std;
int f(int n,int m)//对n个数划分为m个
{
if(m==1||n==m)
return 1;
else
return f(n-1,m-1)+f(n-1,m)*m;//第m个为单独元素和地m个为非独立元素
}
int main()
{
int n;
cout<<"集合中包含元素的数目";
cin>>n;
int sum = 0;
for(int i = 1; i <= n; i++)
{
sum+=f(n,i);
}
cout<<sum;
return 0;
}