有20阶楼梯,一次只能走1阶或2阶,共有几种走法?
7个回答
展开全部
这个题最简单的做法就是分析法。
就是假设阶梯有N层,则按N=1,2,3,4……逐步分析
推出一般规律,即走法a(n)=a(n-2)+a(n-1)可以看出这是一个递推公式。
同时也满足菲波拉契数列的情况
所以20级启肢源阶梯的走法a(20)就为菲波拉契数列的第20项
a(20)=fib(20)=10946
另外一种就比较复杂,根据走2步的不同情况分析,最少一个2步饥亮都不走,最多为10个。(也可以根据1步,但太多了。)
(1)一个2步都不走,为1种情况。
(2)走1个2步,总共步数为19,从19个中随便选1个为2步的 C(19,1)
(3)走2个2步,总共步数18,从18个中随便选2个为2步的。C(18,2)
依悄态次类推为C(17,3);C(16,4);C(15,5)……C(10,10)
总走法=1+C(19,1)+C(18,2)+C(17,3)+……+C(10,10)
=1+19+153+ 680+1820+……+1=10946
就是假设阶梯有N层,则按N=1,2,3,4……逐步分析
推出一般规律,即走法a(n)=a(n-2)+a(n-1)可以看出这是一个递推公式。
同时也满足菲波拉契数列的情况
所以20级启肢源阶梯的走法a(20)就为菲波拉契数列的第20项
a(20)=fib(20)=10946
另外一种就比较复杂,根据走2步的不同情况分析,最少一个2步饥亮都不走,最多为10个。(也可以根据1步,但太多了。)
(1)一个2步都不走,为1种情况。
(2)走1个2步,总共步数为19,从19个中随便选1个为2步的 C(19,1)
(3)走2个2步,总共步数18,从18个中随便选2个为2步的。C(18,2)
依悄态次类推为C(17,3);C(16,4);C(15,5)……C(10,10)
总走法=1+C(19,1)+C(18,2)+C(17,3)+……+C(10,10)
=1+19+153+ 680+1820+……+1=10946
展开全部
根据走2步的不同情况分析,最少一个2步都不走,最多为10个。(也可以根据1步,但太多了。)
(1)一个2步都不走,为1种情况饥岁携。
(2)走1个2步,总共步数为19,从19个中随便选雀薯1个为2步的 C(19,1)
(3)走2个2步,总共步数18,从18个中随便选2个为2步的。C(18,2)
依次类推烂伏为C(17,3);C(16,4);C(15,5)……C(10,10)
总走法=1+C(19,1)+C(18,2)+C(17,3)+……+C(10,10)
=1+19+153+ 680+1820+……+1=10946
(1)一个2步都不走,为1种情况饥岁携。
(2)走1个2步,总共步数为19,从19个中随便选雀薯1个为2步的 C(19,1)
(3)走2个2步,总共步数18,从18个中随便选2个为2步的。C(18,2)
依次类推烂伏为C(17,3);C(16,4);C(15,5)……C(10,10)
总走法=1+C(19,1)+C(18,2)+C(17,3)+……+C(10,10)
=1+19+153+ 680+1820+……+1=10946
追问
对
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
分为0个2阶到10个2阶。如告
比如20个1阶(一袜橡首种)。
18个1+1个2:C19取1(19种)
16个1+2个2:C18取2(153种)
……
接下来你告数自己算下
比如20个1阶(一袜橡首种)。
18个1+1个2:C19取1(19种)
16个1+2个2:C18取2(153种)
……
接下来你告数自己算下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
class T1{
public static int method(int n){
if(n==1||n==2)
return 1;
else
return method(n-1)+method(n-2);
}
public static void main(String[] args){
System.out.println(method(20))
}
}
所禅圆弯贺闷以答腔源案6765
public static int method(int n){
if(n==1||n==2)
return 1;
else
return method(n-1)+method(n-2);
}
public static void main(String[] args){
System.out.println(method(20))
}
}
所禅圆弯贺闷以答腔源案6765
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询