hdu 1398 Square Coins(生成函数)

来源:互联网 发布:js手机端touch事件 编辑:程序博客网 时间:2024/06/03 05:24

和hdu 1028差不多,入门的模板题。

#include <cstdio>const int MAXN = 310;int C1[MAXN];int C2[MAXN];int main(){    int num;    while(scanf("%d",&num) && num)    {        for(int i = 0; i <= num; ++i)        {            C1[i] = 1;            C2[i] = 0;        }        for(int i = 2; i*i <= num; ++i)        {            for(int j = 0; j <= num; ++j)            {                for(int k = 0; k+j <= num; k += i*i)                    C2[k+j] += C1[j];            }            for(int j = 0; j <= num; ++j)            {                C1[j] = C2[j];                C2[j] = 0;            }        }        printf("%d\n",C1[num]);    }    return 0;}
原创粉丝点击