hdu1028 Ignatius and the Princess III

本文介绍了一种使用母函数解决特定问题的算法,并提供了详细的代码实现。通过双重循环更新数组来达到解决问题的目的,对于理解母函数及其应用有很好的帮助。

这是道典型的母函数的题目,可以看看我的母函数这一标签上的另一道例题,里面对母函数做了较为详细的总结。这题仅贴上代码:

 

#include"iostream"
 2  using namespace std;
 3  #define  N 130
 4  int a[N+1],b[N+1];
 5  int main()
 6 {
 7     int n,i,j,k;
 8     while(cin>>n&&n!=0)
 9     {
10         for(i=0;i<=n;i++)
11         {a[i]=1;b[i]=0;}
12         for(i=2;i<=n;i++)
13         {
14             for(j=0;j<=n;j++)
15                 for(k=0;k+j<=n;k+=i)
16                 {
17                     b[k+j]+=a[j];
18                 }
19                 for(j=0;j<=n;j++)
20                 {
21                     a[j]=b[j];b[j]=0;
22                 }
23         }
24         cout<<a[n]<<endl;
25     }
26     return 0;
27     
28 }

 

转载于:https://www.cnblogs.com/acm-jing/p/4253735.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值