hdu2041
这道题以前也看到过,但是没有写出来,我刚开始以为用循环遍历一边就可以了,结果我错了,没想到是用的斐波拉契推出来的,用的是递推的思想。
站在楼梯的第n级想一下,前一步是从哪里来的,问题就清楚了。
由于每次只能上一级或两级,那么f(n)=f(n-2)+f(n-1)。这不就是一个菲波拉契数列吗?就是一个递推问题?
开始时候是站在第1级台阶上,所以数列的开始几项会有所不同。
f(1)=0,因为开始就站在第1级台阶上;
f(2)=1,只能从第1级台阶上1级;
f(3)=2,只能从第1级台阶上2级,或只能从第2级台阶上1级;
f(n)=f(n-2)+f(n-1),n>3。
要先打个表,不然会爆的
#include<stdio.h>
int f[55];
void solve()
{
    f[0]=1;
    f[1]=1;
    f[2]=1;
    for(int i=3;i<=51;i++)
        f[i]=f[i-1]+f[i-2];
}
int main()
{
   int n;
   int T;
   solve();
   scanf("%d",&T);
   while(T--){
        scanf("%d",&n);
        printf("%d\n",f[n]);
   }
    return 0;
}
hdu2041的更多相关文章
- 超级楼梯[HDU2041]
		超级楼梯 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ... 
- Hdu2041 超级楼梯 (斐波那契数列)
		题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2041 超级楼梯 Time Limit: 2000/1000 MS (Java/Others) M ... 
- HDU2041 简单DP+规律
		超级楼梯 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ... 
- hdu2041 dp
		#include<stdio.h> int main() { int i,t,n; ]; dp[]=; dp[]=; dp[]=; ;i<=;i++) dp[i]=dp[i-]+dp ... 
- HDU2041 超级楼梯 (线性DP)
		fn[i]表示走上第i级台阶的所有走法. 方程:fn[i]=fn[i-1]+fn[i-2]; 1 #include<cstdio> 2 #define MAXN 40 3 using na ... 
- 从维度理解dp问题
		对于dp,我目前的理解就是,干成题目中的那件事需要作出若干次决策,然后你要取其中最优的结果,我们可以用深搜来递归地找最优解,然后我们来观察一下这个递归树的形状,如果它能从底往上直接递推的话,就不用递归 ... 
- HDU 2041 DP
		URL:https://vjudge.net/problem/HDU-2041 简单DP,因为每次只能走1或者2阶,所以当走到第i阶的时候(i>=4),那么它的前一种状态只可能是i-1和i-2, ... 
- 【HDUOJ】几道递推DP
		就不写题解了.很基础的递推. HDU2084数塔 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2084 代码: #include <iostre ... 
- HDU100题简要题解(2040~2049)
		HDU2040 亲和数 题目链接 Problem Description 古希腊数学家毕达哥拉斯在自然数研究中发现,220的所有真约数(即不是自身的约数)之和为: 1+2+4+5+10+11+20+2 ... 
随机推荐
- Mysql生成索引的方式
			1.选择索引的数据类型 MySQL支持很多数据类型,选择合适的数据类型存储数据对性能有很大的影响.通常来说,可以遵循以下一些指导原则: (1)越小的数据类型通常更好:越小的数据类型通常在磁盘.内存和C ... 
- python网络编程——socket基础篇
			python的网络编程比c语言简单许多, 封装许多底层的实现细节, 方便程序员使用的同时, 也使程序员比较难了解一些底层的东西. 1 TCP/IP 要想理解socket,首先得熟悉一下TCP/IP协议 ... 
- kubectl 获取信息
			获取pod所在节点的ip kubectlget po tiller-deploy-8694f8fddc-c2rql -n kube-system -o jsonpath='{.status.hostI ... 
- intellij idea 的常见配置
			1.视图配置 配置好后如下图: 2.修改字体大小 3.编码修改 4.行号显示 5.控制台字体大小调整 File->Settings->Editor->Colors & F ... 
- Coding Contest(费用流变形题,double)
			Coding Contest http://acm.hdu.edu.cn/showproblem.php?pid=5988 Time Limit: 2000/1000 MS (Java/Others) ... 
- 对实体类的CRUD操作
			--------------------siwuxie095 对实体类的 CRUD 操作 1.创建数据库和表 (1)创建一个 MySQL 连接:mybatis_conn (2)创建一个数据库:myba ... 
- python学习——urlparse模块
			urlparse模块: 1.urlparse() 具体程序及结果如下: >>> url = 'http://i.cnblogs.com/EditPosts.aspx?opt=1'&g ... 
- BZOJ 1211[HNOI2004]树的计数 - prufer数列
			描述 一个有n个结点的树,设它的结点分别为v1, v2, …, vn,已知第i个结点vi的度数为di,问满足这样的条件的不同的树有多少棵.给定n,d1, d2, …, dn,编程需要输出满足d(vi) ... 
- Spring AOP配置
			相关概念有点拗口,我这里简单总结一个,切面,决定做什么,写处理逻辑,比如打日志.切入点,决定在哪些方里拦截,一般填正则表达式查询. 通知,就是连接切面和切入点的桥梁. 其中遇到了配置好,启动服务器没报 ... 
- javac 编译java文件提示: 程序包com.mysql.jdbc不存在
			需要将引用的包放到:/usr/java/jdk1.7.0_75/jre/lib/ext 也就是jdk安装目录/jre/lib/ext 目录下面 
