一些算法题

1.裴波那契数列求解上台阶的问题(一个楼梯,可以一阶一阶的上,可以两阶两阶得上,可以三阶三阶的上,问一个N阶的楼梯,求有多少种上楼梯的上法,写出你的算法,任何编程语言皆可)

//java
import
java.io.*; import java.util.Scanner; class suanfa { public static void main (String[] args) { Scanner out = new Scanner(System.in); int n= out.nextInt(); int a[]=new int[100]; a[1] = 1; a[2] = 2; a[3] = 4; for (int i=4;i<=n ;i++ ) a[i]=a[i-3]+a[i-2]+a[i-1]; System.out.println(a[n]); } }
//c/c++
#include <stdio.h>  
    
int main()  
{  
        int i,N;  
         long long a[100];
        while(~scanf("%d",&N))  
        {               
                a[1]=1;  
                a[2]=2;
                a[3]=4;
                for(i=4;i<=N;i++)  
                        a[i]=a[i-1]+a[i-2]+a[i-3];  
                printf("%lld
",a[N]);  
        }  
            
        return 0;  
            
} 


 
原文地址:https://www.cnblogs.com/myywsy/p/8807001.html