思路:通过演算,我们很容易就能得到, f[1] = 1; f[2] = f[1] +1; f[3] = f[1] + 1; f[4] = f[2] + f[1] +1 = 4; f[5] = f[2] + f[1] + 1 =4; f[6] = f[3]+f[2]+f[1] +1= 6; 然后就有以下代码
#include<bits/stdc++.h>
using namespace std;
int f[1005];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=i/2;j++){
f[i]+=f[j];
}
f[i]++;
}
cout<<f[n];
return 0;
}