public class Test{ static final int s = 10; //自定义的台阶数 static int len = 0, sum = 0; static int step[] = new int[s]; static void compute(final int stair) { if(stair<0) return; if(stair==0) { printSum(); sum++; return; } for(int i = 1; i <= 3; i++) { step[len] = i; len++; compute(stair-i); len--; } } static void printSum() { System.out.print("走法:"); for(int i = 0; i < len; i++) System.out.print(step[i]+ " "); System.out.println(); } public static void main(String args[]){ compute(s); System.out.println("共有" + sum + "种走法"); } }
有n个台阶,一次1步、2步或3步的上台阶。试对给出的任意一个n(n〉0),求出上台阶的总上法的递推公式。
最新推荐文章于 2022-07-21 17:50:54 发布