首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

哪位高手能给小弟我解释一上这个题(母函数)

2012-09-29 
谁能给我解释一下这个题(母函数)[codeC/C++][/code]//HDOJ_1398Square Coins//变化一点点,灵活多多多…int

谁能给我解释一下这个题(母函数)
[code=C/C++][/code]//HDOJ_1398 Square Coins
//变化一点点,灵活多多多

int main(void)
{int n,i,j,k;
  int elem[17]={1,4,9,16,25,36,…,169,196,225,256,289}
while (cin>>n && n!=0)
{for (i=0;i<=n;i++)
{c1[i]=1;c2[i]=0;}
for (i=2; i<=17; i++)
{for (j=0;j<=n;j++)
for (k=0;k+j<=n; k+=elem[i-1] ) 
{c2[j+k]+=c1[j];}
for (j=0;j<=n;j++)
{c1[j]=c2[j];c2[j]=0;}
}
cout<<c1[n]<<endl;
}
return 0;
}
节食一下那三个for循环,给跪啦!

[解决办法]
不能从代码来解释,要从数学角度来解释,你要是懂母函数的数学过程你自然就懂了,
http://blog.csdn.net/qq258513813/article/details/6269615
推荐看看这篇文章,我当年就是看着这篇学会母函数的,普通母函数还是很好懂的的。

热点排行