#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
const int MAX=50;
#define CLR(arr,val) memset(arr,val,sizeof(arr))
int n,m,value[MAX],temp[MAX];
int main()
{ cin>>m;
while(m--)
{ cin>>n;
fill(value,value+MAX,1);//value用来存储系数
CLR(temp,0);//temp用来保存每一次的情况
for(int i=2;i<=n;i++)
{ for(int j=0;j<=n;j++)
for(int k=0;k+j<=n;k+=i) //控制每次系数的变化和每个数出现的最大项数
temp[k+j]+=value[j];
for(int j=0;j<=n;j++)
value[j]=temp[j],temp[j]=0;
}
cout<<value[n]<<endl;
}
return 0;
}
母函数
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- (一)普通母函数:## http://www.wutianqi.com/?p=596 ① 、首先对c1初始化,由第...