http://acm.hdu.edu.cn/showproblem.php?pid=1028
707 ワード
: N, , M(M>=1) N.
k*i+j;
#include<stdio.h>
#include<string.h>
#define max 130
int c1[max],c2[max];
void init()
{
memset(c1,0,sizeof(c1));
memset(c2,0,sizeof(c2));
c1[0]=1;
for(int i=1; i<=max; i++)
{
for(int j=0; j<=max; j++)
for(int k=0; k*i+j<=max; k++)
{
c2[k*i+j]+=c1[j];
}
for(int i=0; i<=max; i++)
{
c1[i]=c2[i];
c2[i]=0;
}
}
}
int main()
{
int t;
init();
while(scanf("%d",&t)!=EOF)
{
printf("%d
",c1[t]);
}
return 0;
}