hdu-ACM Step 3.1递归求解2041,2044,2046,2018,2050,2501,2045,2604

这章全是递推求解专题

很类似DP

现在分析各题的递推公式:

3.1.1超级楼梯

http://acm.hdu.edu.cn/showproblem.php?pid=2041

C[j]=C[j-i]+C[j-2] ///C[1]=1,C[2]=1(此处没想通,为什么C[2]=1,不过题目很明显给出了)

可以理解为在要到第j层,可以从j-2层迈两阶,j-1层迈一阶。

3.1.2一只小蜜蜂

http://acm.hdu.edu.cn/showproblem.php?pid=2044

Cm-n等同于C1-(n-m+1)

num[i]=num[i-1]+num[i-2];、、、num[0]=0;num[1]=1;

数据超出int 范围,用long long可以解决

思路如3.1.1

3.1.3骨牌铺方格

http://acm.hdu.edu.cn/showproblem.php?pid=2046

num[i]=num[i-1]+num[i-2];、、、num[0]=1;num[1]=1;

如3.1.2 用long long

3.1.4母牛的故事

http://acm.hdu.edu.cn/showproblem.php?pid=2018

num[i]=num[i-1]+num[i-3];、、、num[0]=1;num[1]=1;num[2]=2;num[3]=3;

第5天的牛数等于昨天的牛数加上第2天的牛数即(第一天的牛数生的小牛数加第五天大母牛生的小牛)还是long long类型

3.1.5折线分割平面

http://acm.hdu.edu.cn/showproblem.php?pid=2050

这个题是根据前几个题猜测的公式:

num[i]=2*i*i-i+1;数据用int就足够了

3.1.6Tiling easy version

http://acm.hdu.edu.cn/showproblem.php?pid=2501

num[i]=num[i-1]+2*num[i-2];long long的数据类型

在3.1.3的基础上,再添加一个情况,num[i-2]放好后再放一个2*2的骨牌

3.1.7不容易系列之3 LELE的RPG难题

http://acm.hdu.edu.cn/showproblem.php?pid=2045

num[i]=num[i-1]+num[i-2]*2;

题意很类似于3.1.6

3.1.8Queuing

http://acm.hdu.edu.cn/showproblem.php?pid=2604

这个题有俩解法。这里放一个递推的公式。另外的矩阵解法,具体的解法 等吃完饭再重新写个。

num[L]=(num[L-1]+num[L-3]+num[L-4]

long long还是会超范围,用char类型解决,打表计算好余数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值