Poweroj:2425-跳台阶(经典递推)
题目链接:https://www.oj.swust.edu.cn/problem/show/2425
跳台阶
Edit Manage Data Rejudge 
Time Limit: 1000 MS Memory Limit: 65536 KB 
Total Submit: 380 Accepted: 133 Page View: 1154 
Submit Status Discuss
Description
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
Input
输入包含多个测试样例,对于每个测试案例,输入包括一个整数n (1 <= n <= 50)。
Output
对应每个测试案例,输出该青蛙跳上一个n级的台阶总共有多少种跳法。
Sample Input
6
Sample Output
32
解题心得:
- 其实就是一个递推的题,每个如果一个青蛙要跳到第n级台阶,那么这个青蛙可以从它前面的所有的台阶跳到第n级,这样到达第n级台阶的方法就等于前面所有的相加,当然也可以直接跳到第n级,所以最后需要加1,如果想不通可以假设这个青蛙每次只能跳1阶或者跳2阶,这就成了一个斐波那契数列。
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 50;
ll method[maxn];
void init() {
    method[1] = 1;
    method[2] = 2;
    for(int i=3;i<=50;i++) {
        for(int j=1;j<i;j++) {
            method[i] += method[j];
        }
        method[i] += 1;
    }
}
int main() {
    init();
    int n;
    while(scanf("%d",&n) != EOF ) {
        printf("%lld\n",method[n]);
    }
    return 0;
}Poweroj:2425-跳台阶(经典递推)的更多相关文章
- nyoj 76-超级台阶 (递推)
		76-超级台阶 内存限制:64MB 时间限制:1000ms 特判: No 通过数:8 提交数:12 难度:3 题目描述: 有一楼梯共m级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第m级,共 ... 
- 一只青蛙从第一级台阶跳到第n级,每次可以跳任意级,共有多少种跳法,并写出递推式
		是斐波那契数列问题 假设f(n)是n个台阶跳的次数:(假设已经调到第n个台阶,最后一次是由哪个台阶跳上来的) f(n) = f(n-1)+f(n-2)+...+f(n-(n-1)) + f(n-n) ... 
- LA 3882 经典约瑟夫环问题的数学递推解法
		就是经典约瑟夫环问题的裸题 我一开始一直没理解这个递推是怎么来的,后来终于理解了 假设问题是从n个人编号分别为0...n-1,取第k个, 则第k个人编号为k-1的淘汰,剩下的编号为 0,1,2,3. ... 
- HDU 1757 A Simple Math Problem 【矩阵经典7 构造矩阵递推式】
		任意门:http://acm.hdu.edu.cn/showproblem.php?pid=1757 A Simple Math Problem Time Limit: 3000/1000 MS (J ... 
- 矩阵经典题目七:Warcraft III 守望者的烦恼(矩阵加速递推)
		https://www.vijos.org/p/1067 非常easy推出递推式f[n] = f[n-1]+f[n-2]+......+f[n-k]. 构造矩阵的方法:构造一个k*k的矩阵.当中右上角 ... 
- 第二场周赛(递归递推个人Rank赛)——题解
		很高兴给大家出题,本次难度低于上一场,新生的六个题都可以直接裸递归式或者裸递推式解决,对于老生的汉诺塔3,需要找出一般式,后两题分别为裸ST算法(或线段树)/线性DP. 正确的难度顺序为 种花 角谷定 ... 
- LeetCode 70 - 爬楼梯 - [递推+滚动优化]
		假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1: 输入: 2输出: 2解释: 有两种方 ... 
- 《剑指offer》-青蛙跳台阶II
		一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 其实题目很水...就是一个等比数列通项公式嘛 f(0)=1 f(1)=1 f(n)=f( ... 
- 剑指Offer——跳台阶
		题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 思路分析 这个问题可以先从简单开始考虑,台阶只有1阶,只有1种跳法,台阶有2阶,有2种跳法:一种两 ... 
随机推荐
- Bootstrap学习笔记(四)
			四.JS插件 概述:与jQueryUI库类似,Bootstrap提供了十几个插件函数.有两种调用方法: (1) 传统JS变成方式 $(...).插件函数.(); (2) 使用data-*扩展属性(推荐 ... 
- 洛谷P3372 【模板】线段树 1(树状数组)
			题意 题目链接 Sol Get到了这题树状数组的做法,感觉非常nice 区间加:直接差分 区间求和:考虑每一位的贡献 \(sum_{i = 1}^x (x+1 - i) d_i\) \(= sum_{ ... 
- If you want the rainbow, you have to deal with the rain.
			If you want the rainbow, you have to deal with the rain.想要彩虹,就先忍受雨水. 
- java右移>> 无符号右移>>>
			>>>是无符号右移,在高位补零 >>是带符号的右移,如果是正数则在高位补零,负数则补1 int a = -1; System.out.println(a>>1 ... 
- SQL2008R2 清空日志
			SQLSERVER2008之前版本执行的SQL语句: DUMP TRAN 数据库名 WITH NO_LOG SQLSERVER2008-R2版本执行的SQL语句: ALTER DATABASE 数据库 ... 
- VMware下,windows7无法自动更新,故障80072EE2
			手动安装更新 1) KB3020369 2) KB3172605 
- 用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别
			用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别 http://phunter.farbox.com/post/mxnet-tutorial1 用MXnet实战深度学 ... 
- P2096 最佳旅游线路
			最大字段和加贪心 算长了个见识吧 #include<iostream> #include<cstdio> #include<algorithm> using nam ... 
- CUDA线性内存分配
			原文链接 概述:线性存储器可以通过cudaMalloc().cudaMallocPitch()和cudaMalloc3D()分配 1.1D线性内存分配 1 cudaMalloc(void**,int) ... 
- ajax实现分页页签
			在一些搜索列表的页面中,我们会遇到一些需要处理页签的需求,一般这样的页面,要么是在JSP中处理,每次都跳页.这样做是个很方便的方法.但是如果页面上有很多和列表无关,每次都需要重新渲染是不是显得慢了一些 ... 
