问题标题: 搬砖头

0
0

1
已采纳
李祈乐
李祈乐
新手光能
新手光能

简单的递归题目,找出递归的边界,然后根据边界,求得答案,先求出搬1,2,3块砖的方法数,然后寻找规律,得n块砖,就是前3块砖的方法数之和。以下是函数递归过程:

if(n==1)return 1;
	if(n==2)return 2;
	if(n==3)return 4;
	return zhuan(n-1)+zhuan(n-2)+zhuan(n-3);

 

李祈乐在2018-08-05 21:32:42追加了内容

那就再用数组存储能搬的次数

即:

a[1]=1;
    a[2]=2;
    a[3]=4;
    for(int i=4;i<=n;i++)
    	a[i]=a[i-1]+a[i-2]+a[i-3];
    cout<<a[n];

思路和上面都是一样的

0
我要回答