hdu 2566 统计硬币(母函数)

来源:互联网 发布:mac 破解软件大全 编辑:程序博客网 时间:2024/05/19 12:40
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int c1[1010][1010],c2[1010][1010];int main(){int n,m,i,j,k,t,h;scanf("%d",&t);while(t--){memset(c2,0,sizeof(c2));memset(c1,0,sizeof(c1));scanf("%d%d",&n,&m);for(i=0;i<=n;i++){//初始化 c1[i][i]=1;}for(i=2;i<=5;i+=3){for(j=0;j<=m;j++){for(k=0;k*i+j<=m&&k<=n;k++){//计算钱数 for(h=0;k+h<=n;h++)//计算个数 c2[j+k*i][k+h]+=c1[j][h];}}for(j=0;j<=m;j++)for(k=0;k<=n;k++){c1[j][k]=c2[j][k];c2[j][k]=0;}}printf("%d\n",c1[m][n]);}return 0;} 

0 0