当前位置: 代码迷 >> 综合 >> ZZULIOJ 1091: 童年生活二三事(多实例测试)(斐波那契数列)
  详细解决方案

ZZULIOJ 1091: 童年生活二三事(多实例测试)(斐波那契数列)

热度:42   发布时间:2024-01-09 04:08:27.0

题目描述

Redraiment小时候走路喜欢蹦蹦跳跳,他最喜欢在楼梯上跳来跳去。 但年幼的他一次只能走上一阶或者一下子蹦上两阶。 现在一共有N阶台阶,请你计算一下Redraiment从第0阶到第N阶共有几种走法。

输入

输入包括多组数据。 每组数据包括一行:N(1≤N≤40)。 输入以0结束

输出

对应每个输入包括一个输出。 为redraiment到达第n阶不同走法的数量。

样例输入 Copy

1
3
0

样例输出 Copy

1
3

[居然是斐波那契数列】

#include <stdio.h>  
int main()  
{  int a[41];  int i,n;  a[1]=1;a[2]=2;  for (i=3;i<=40;i++)  {  a[i]=a[i-2]+a[i-1];  }  while((scanf("%d",&n)==1)&&(n!=0))  printf("%d\n",a[n]);  return 0;
}  
import java.util.*;
public class Main {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc=new Scanner(System.in);int n;int[] a=new int[1000];while(sc.hasNextInt()){int i=2;n=sc.nextInt();if(n==0)break;else{a[0]=1;a[1]=2;for(i=2;i<n;i++){a[i]=a[i-1]+a[i-2];}if(n<2)System.out.println(1);elseSystem.out.println(a[i-1]);}}sc.close();}}