39台阶

简介: //题目描述:// 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!// 站在台阶前,他突然又想着一个问题:// 如果我每一步只能迈上1个或2个台阶。
//题目描述:
//    小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!
//   站在台阶前,他突然又想着一个问题:
//   如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右
//   脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?
#include <stdio.h>
void function(int steps,int num); 
int count=0;    //多少种上法
int main()
{   
    function(39,0);
    printf("%d",count); 
    return 0;
}
void function(int steps,int num)    //台阶,步数
{    
    if(steps<0)
    return;
    if(steps == 0 && num %2 == 0)
    {
        count++;
        return;
    }
    function(steps-1,num+1);
    function(steps-2,num+1);    
} 
目录
相关文章
【Java每日一题,动态规划,零钱兑换模板题】硬币组合数量
【Java每日一题,动态规划,零钱兑换模板题】硬币组合数量
|
15天前
|
存储
(剑指Offer)10、菲波那切数列I—10、青蛙跳台阶问题II—63、股票的最大利润(2021/12/04)
(剑指Offer)10、菲波那切数列I—10、青蛙跳台阶问题II—63、股票的最大利润(2021/12/04)
28 0
|
23天前
运用函数递归解决汉诺塔、青蛙跳台问题以及青蛙跳台潜在问题
运用函数递归解决汉诺塔、青蛙跳台问题以及青蛙跳台潜在问题
15 0
洽谈背包问题求方案数
洽谈背包问题求方案数
|
5月前
|
机器学习/深度学习 人工智能
【洛谷 P1028】[NOIP2001 普及组] 数的计算 题解(递推)
在NOIP2001普及组的数的计算题目中,给定自然数`n`,需构造遵循特定规则的合法数列。合法序列始于`n`,新元素不超过前一项的一半。任务是找出所有这样的数列数量。例如,当`n=6`时,合法序列包括`6`, `6,1`, `6,2`, `6,3`, `6,2,1`, `6,3,1`。程序通过动态规划求解,当`i`为奇数时,`a[i] = a[i - 1]`;为偶数时,`a[i] = a[i - 1] + a[i / 2]`。代码中预处理数组`a`并输出`a[n]`作为答案。输入`n`后,程序直接计算并打印合法数列个数。
48 0
|
6月前
|
算法
【贪心算法】|860.柠檬水找零
【贪心算法】|860.柠檬水找零
|
6月前
|
存储 算法 程序员
【算法训练-动态规划 一】【应用DP问题】零钱兑换、爬楼梯、买卖股票的最佳时机I、打家劫舍
【算法训练-动态规划 一】【应用DP问题】零钱兑换、爬楼梯、买卖股票的最佳时机I、打家劫舍
129 0
|
算法 NoSQL C++
剑指offer(C++)-JZ63:买卖股票的最好时机(一)(算法-动态规划)
剑指offer(C++)-JZ63:买卖股票的最好时机(一)(算法-动态规划)
|
算法
【递归与递推】洛谷[NOIP2002 普及组] 过河卒
前言 本题来自洛谷P1002. 题目链接:[NOIP2002 普及组] 过河卒 - 洛谷
213 0