lsdsg 发表于 2021-10-15 15:21:24

填空题1

【问题描述】

有n级台阶,可以一步上一个台阶,也可以一步上两个台阶,编写程序,计算共有多少种不同的走法。



【输入形式】

一个非零整数。



【输出形式】

一个整数。



【样例输入】

5



【样例输出】

8



【样例说明】

有以下8中走法:

1,1,1,1,1

1,1,1,2

1,1,2,1

1,2,1,1

2,1,1,1,

1,2,2

2,1,2

2,2,1

#include<stdio.h>

intstep(intn)
{
      if(n<0)
            return0;
      if((n==0)||(n==1)||(n==2))
            空
      else
            return空
      
}

intmain()
{
      intn;
      scanf("%d",&n);
      printf("%d",step(n));
      return0;
}

逃兵 发表于 2021-10-15 15:33:02

#include<stdio.h>

intstep(intn)
{
      if(n<0)
            return0;
      if((n==0)||(n==1)||(n==2))
            return n;
      else
            returnstep(n-1)+step(n-2);
      
}

intmain()
{
      intn;
      scanf("%d",&n);
      printf("%d",step(n));
      return0;
}

傻眼貓咪 发表于 2021-10-15 15:44:28

C 代码:#include <stdio.h>

int solution(int n){
   
    int a = 1, b = 1;
   
    for(int i = 0; i < n; i++){
      int temp = a;
      a = b;
      b += temp;}
      
    return a;
}

int main(){
    int n;
    scanf("%d", &n);
    printf("%d", solution(n));
    return 0;
}
Python 代码:def solution(n: int) -> int:
    a, b = 1, 1
    for _ in range(n):
      a, b = b, a + b
    return a

n = int(input())
print(solution(n))
页: [1]
查看完整版本: 填空题1