思路:递推每个扩展的数量
#include<iostream>
using namespace std;
int h[1001];
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++) //按递增顺序计算扩展出的自然数个数
{
h[i]=1; //扩展出的自然数包括i本身
for(int j=1;j<=i/2;j++) //i左边分别加上i···自然数[i/2]按规则扩展出
//的自然数个数
h[i]+=h[j];
}
cout<<h[n];
return 0;
}