ACM___________________________

______________白白の屋
posts - 182, comments - 102, trackbacks - 0, articles - 0

HDOJ HDU 1398 Square Coins ACM 1398 IN HDU

Posted on 2010-08-05 13:02 MiYu 阅读(645) 评论(0)  编辑 收藏 引用 所属分类: ACM ( 母函数 )C/C++
//MiYu原创, 转帖请注明 : 转载自 ______________白白の屋

题目地址:
http://acm.hdu.edu.cn/showproblem.php?pid=1398
也是一道基础的 母函数题目 ,  详细可以参照  母函数 ( Generating function ) 详解
代码如下 :
//MiYu原创, 转帖请注明 : 转载自 ______________白白の屋

#include 
<iostream>
using namespace std;
int num1[11111];
int num2[11111];
int main ()
{
    
int N;
    
while ( cin >> N , N )
    {
           
for ( int i = 0 ; i <= N; ++ i )
           {
                 num1[i] 
= 1;
                 num2[i] 
= 0
           }
           
for ( int i = 2; i <= 17++ i )
           {
                 
for ( int j = 0;j <= N; ++ j )
                 {
                       
for ( int k = 0; k + j <= N; k += i * i ) 
                       {
                             num2[j 
+ k] += num1[j]; 
                       }
                 } 
                 
for ( int j = 0; j <= N; ++ j )
                 {
                       num1[j] 
= num2[j];
                       num2[j] 
= 0;
                 }
           }
           cout 
<< num1[N] << endl;
    }
    
return 0
}

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理