Given a function as follow : f(n) = f(n-1) + f(n-3) + f(n-4)
f(0) = 1
f(1) = 2
f(2) = 3
f(3) = 4
I know to implement it using recursion with three recursive calls inside one function. But I want to do it with only one recursion call inside the function. How it can be done ?
To implement using 3 recursive calls here is my code :
def recur(n):
if n == 0:
return 1
elif n == 1:
return 2
elif n == 2:
return 3
elif n == 3:
return 4
else:
return recur(n-1) + recur(n-3) + recur(n-4) #this breaks the rule because there are 3 calls to recur