递推
w1234fd
这个作者很懒,什么都没留下…
展开
-
hdu 2190 重建希望小学
题目【类似hdu 2046 骨牌铺方格】注意思考:(老师提醒点)例如:3 -> 5,为什么是2种变化,而不是 3种变化?答:用6块1米×1米的地砖时,经过状态4,已经被考虑,不能重复考虑。#include<stdio.h>int main(){ long long ans[35];//注意防递推值太大,定义为long long型 int t; ans[1]=1; ans[2]=3; for(int i=3;i<=30;i++){ ans[i]=ans[i-原创 2021-05-21 19:23:06 · 101 阅读 · 0 评论 -
hdu 2046 骨牌铺方格
骨牌铺方格题目分析F(0) = 0,没有地方摆骨牌,所以为0;f(1) = 1,只能竖着摆放1个骨牌;(1种铺放方案)f(2) = 2,可以是横着摆放2个骨牌,或者竖着摆放2个骨牌;(1种铺放方案)f(n) = f(n-2) + f(n-1),n>2,可以在f(n-2)的基础上在右边再横着放2个骨牌(竖着放已经在f(n-1)中),也可以在f(n-1)的基础上在右边再竖着1个骨牌。【类似于超级楼梯】代码:#include<stdio.h>int main(){ i原创 2021-05-16 17:49:10 · 132 阅读 · 0 评论 -
hdu 2044 一只小蜜蜂...
** 一只小蜜蜂…**题目题目分析如下图问题分析:这个问题非常类似于我之前写的:hdu 超级楼梯,略微有些不同。站在第n个蜂房想一下,前一步是从哪里来的,问题就清楚了。分析:看图可知,由于蜜蜂每次只能从前1个蜂房前2个蜂房过来,那么f(n)=f(n-2)+f(n-1)。这部就是一个菲波拉契数列吗?就是一个递推问题?可是,开始时候,蜜蜂是在第1个蜂房,所以数列的开始几项会有所不同。f(1)=0,因为蜜蜂开始在第1个蜂房;f(2)=1,蜜蜂只能从第1个蜂房来到第2个蜂房;f(3)=2,蜜蜂原创 2021-05-16 17:23:33 · 128 阅读 · 0 评论 -
hdu 2041 超级楼梯
超级楼梯题目从题目中推出下图关系图由图可知:计算 F(n) 时,主要时求出F(n-1)与F(n-2)的值,再求两者之和。类似于斐波那契数列递推的关键1.在计算 F(n) 时,要保证F(n-1)、F(n-2)、F(n-3)、……、F(2)、F(1) 已全部完成计算2.计算的次序是F(1)、F(2)、F(3)、……、F(n-2)、F(n-1)、F(n)#include<stdio.h>int main(){ int n,m; long long a[50]={0,1,1};/原创 2021-05-16 16:40:26 · 80 阅读 · 0 评论