hdu 1398 Square Coins (母函数)
记录一下母函数的第一次:
View Code
1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 using namespace std; 5 int c1[350],c2[350]; 6 int n; 7 int main() 8 { 9 while(cin>>n) 10 { 11 if(n==0) break; 12 int i,j,k; 13 for(i=0;i<=n;i++) 14 { 15 c1[i]=1;c2[i]=0; 16 } 17 for(i=2;i<=17;i++) 18 { 19 for(j=0;j<=n;j++) 20 { 21 for(k=0;k+j<=n;k+=i*i) 22 { 23 c2[k+j]+=c1[j]; 24 } 25 } 26 for(j=0;j<=n;j++) 27 { 28 c1[j]=c2[j];c2[j]=0; 29 } 30 } 31 cout<<c1[n]<<endl; 32 } 33 return 0; 34 }